Exécution de code php sous condition

Signaler
-
 KDJB -
Bonjour, j''aimerai que mon code php ne soit exécuté que lorsque ma condition javascript est remplie mais je ne sais pas trop comment faire voilà le code

<?php
	#code de truc. php
	 $pdo= new PDO('mysql:dbname=truc;host=localhost','root','');
   $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
   if (isset($_POST['valider'])) {
   	$NOM=$_POST['nom'];
   	$APPAREIL=$_POST['appareil'];
   	$req=$pdo->prepare("INSERT INTO nouveau_truc SET nom=?, appareil=?");
   	$req->execute([$NOM,(implode("/", $APPAREIL))]);
   }
 ?>
<!DOCTYPE html>
<html>
<head>
	<title>form</title>
</head>
<body>
	<form method="POST" action="truc.php">
	<input type="text" name="nom" placeholder="entrer votre nom" id="nom">
	<input type="checkbox" name="appareil[]" value="portable" class="appareil">portable
	<input type="checkbox" name="appareil[]" value="tablette" class="appareil">tablette
	<input type="checkbox" name="appareil[]" value="laptop" class="appareil">laptop
	<input type="checkbox" name="appareil[]" value="desktop" class="appareil" >desktop
	<input type="submit" name="valider" value="valider" onclick="verification()">
	<script language="javascript">
		function verification()
		{
			var nms=document.getElementById('nom').value;
			if (nms=="")
			 {
			 	alert("veuilez remplir tous les champs");
			 }
			else 
			{
				alert("enregistrement terminé");
			}
		}
	</script>
</body>
</html>


Configuration: Windows / Chrome 89.0.4389.90

3 réponses

Messages postés
32076
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2021
3 400
Bonjour,

Commence par mettre un
event.preventDefault();

dans ta fonction javascript.

Puis, dans le IF, tu peux déclencher le submit via le javascript
https://www.w3schools.com/jsref/met_form_submit.asp
Désolé je ne comprends pas bien ce que tu veut dire pas là et avec le "event.preventdefault()" stp je ne sais même pas comment ça s'utilise tu pourrait pa me montrer.
Merci
Messages postés
14781
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
12 avril 2021
283
PHP s'execute côté serveur, Javascript côté client.
Il faut à un moment refaire une requête vers le serveur soit avec de l'AJAX ou en chargeant une nouvelle page.
Messages postés
32076
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
16 avril 2021
3 400
Le submit en js suffira.