[PHP] validation d1 formulaire via phpmyadmin
kanabinch
Messages postés
69
Statut
Membre
-
kanabinch Messages postés 69 Statut Membre -
kanabinch Messages postés 69 Statut Membre -
Bonjour,
Voilà j'ai besoin que qq'un qui me dise où est-ce que mon code cloche.
Il permet d'enregistrer un eleve grâce à un formulaire dans la base de donnée phpmyadmin.
Mon problème l'enregistrement dans la base de données ne fonctionne pas.
FORMULAIRE :
<form method="post" action="inscription.php">
<table>
<tr>
<td>Nom</td>
<td><input type="text" name="nom"></td>
</tr>
<tr>
<td>Prenom</td>
<td><input type="text" name="prenom"></td>
</tr>
<tr>
<td>Date de naissance</td>
<td><input type="text" size="10" name="dat_naiss">(jj/mm/aaaa)</td>
</tr>
</table>
<input type="submit" value="Valider" name="Valid">
</form>
CODE PHP (dans la même page):
<?php
include("inclusion/connexion.php");
if(isset($Valid))
{
if (empty($_REQUEST['nom']) || empty($_REQUEST['prenom']) || empty($_REQUEST['dat_naiss']))
die("ERREUR : tous les champs doivent etre remplis.");
$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$_REQUEST['nom']."','".$_REQUEST['prenom']."','".$_REQUEST['dat_naiss']."')";
mysql_query($sql);
if (mysql_query($sql) != false)
print("eleve < ".$_REQUEST['nom']." > enregistré.");
else
print("Echec lors de la création de la fiche.");
mysql_close();
}
?>
Merci d'avance
Voilà j'ai besoin que qq'un qui me dise où est-ce que mon code cloche.
Il permet d'enregistrer un eleve grâce à un formulaire dans la base de donnée phpmyadmin.
Mon problème l'enregistrement dans la base de données ne fonctionne pas.
FORMULAIRE :
<form method="post" action="inscription.php">
<table>
<tr>
<td>Nom</td>
<td><input type="text" name="nom"></td>
</tr>
<tr>
<td>Prenom</td>
<td><input type="text" name="prenom"></td>
</tr>
<tr>
<td>Date de naissance</td>
<td><input type="text" size="10" name="dat_naiss">(jj/mm/aaaa)</td>
</tr>
</table>
<input type="submit" value="Valider" name="Valid">
</form>
CODE PHP (dans la même page):
<?php
include("inclusion/connexion.php");
if(isset($Valid))
{
if (empty($_REQUEST['nom']) || empty($_REQUEST['prenom']) || empty($_REQUEST['dat_naiss']))
die("ERREUR : tous les champs doivent etre remplis.");
$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$_REQUEST['nom']."','".$_REQUEST['prenom']."','".$_REQUEST['dat_naiss']."')";
mysql_query($sql);
if (mysql_query($sql) != false)
print("eleve < ".$_REQUEST['nom']." > enregistré.");
else
print("Echec lors de la création de la fiche.");
mysql_close();
}
?>
Merci d'avance
A voir également:
- [PHP] validation d1 formulaire via phpmyadmin
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Temps validation annonce le bon coin - Forum Hotmail / Outlook.com
- Easy php - Télécharger - Divers Web & Internet
8 réponses
Bonjour,
qqs erreurs: il faut récuperer par $_POST
Essayes comme ça:
qqs erreurs: il faut récuperer par $_POST
Essayes comme ça:
<?php
include("inclusion/connexion.php");
if(isset($_POST['Valid']))
{
if (empty($_POST['nom']) || empty($_POST['prenom']) || empty($_POST['dat_naiss'])){
$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$_POST['nom']."','".$_POST['prenom']."','".$_POST['d at_naiss']."')";
$enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());// rajouté trace erreur
//if (mysql_query($sql) != false) //comme ça c'est pas bon car tu fais deux fois la commande mysql_query
if($enr){ // sous entendu $enr true
print("eleve < ".$_POST['nom']." > enregistré.");
}else{
print("Echec lors de la création de la fiche.");
}
mysql_close();
}
}else{
print "ERREUR : tous les champs doivent etre remplis.";
}
?>
Rebonjour,
En complement à mon précedent post:
essayes comme ça fichier inscription.php:
En complement à mon précedent post:
essayes comme ça fichier inscription.php:
<html>
<?php
//int variables
$form_ok=0;
//recup des valeurs postées en passant la fonction htmlentities (protection contre codes malicieux, on ne sait jamais)
// si tu ne comprends pas les 3 lignes ci dessous vas voir sur Google ou Exalead "PHP objet ternaire"
$nom=isset($_POST['nom']) ? htmlentities($_POST['nom']) : "";
$prenom=isset($_POST['prenom']) ? htmlentities($_POST['prenom']) : "";
$date_naiss=isset($_POST['dat_naiss']) ? htmlentities($_POST['dat_naiss']) : "";
if(isset($_POST['Valid'])){
if ($nom=="" || $prenom =="" || $date_naiss ==""){// si au moins un des champs est vide
print "<font color=\"red\">ERREUR : tous les champs doivent etre remplis.</font>";
}else{
$form_ok=1;
include("inclusion/connexion.php");
$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
VALUES ('".$nom."','".$prenom."','".$prenom."')";
$enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());// rajouté trace erreur
//if (mysql_query($sql) != false) //comme ça c'est pas bon car tu fais deux fois la commande mysql_query
if($enr){ // sous entendu $enr true
print("Eleve < ".$_POST['nom']." > enregistré.");
}else{
print("Echec lors de la création de la fiche.");
}
mysql_close();
}
}
if($form_ok==0){// si premier affichage ou si saisies non comformes on affiche le formulaire
?>
<form name="ma_form" method="post" action="inscription.php">
<table>
<tr>
<td>Nom</td>
<td><input type="text" name="nom" value="<?php print $nom; ?>"></td>
<!-- value=".........." c'est pour que si une des saisies est non comforme ça réaffiche celles déja saisie -->
</tr>
<tr>
<td>Prenom</td>
<td><input type="text" name="prenom" value="<?php print $prenom; ?>"></td>
</tr>
<tr>
<td>Date de naissance</td>
<td><input type="text" size="10" name="dat_naiss" value="<?php print $date_naiss; ?>">(jj/mm/aaaa)</td>
</tr>
</table>
<input type="submit" value="Valider" name="Valid">
</form>
<?php
}
?>
</html>
Merci d'avoir pris le temps de résoudre mon problème mais j'ai encore un problème
Il s'affiche :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 75
72 $form_ok=1;
73 include("inclusion/connexion.php");
74 $sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
75 VALUES ('".$nom."','".$prenom."','".$prenom."')";
76
77 $enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());
Il s'affiche :
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 75
72 $form_ok=1;
73 include("inclusion/connexion.php");
74 $sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve)
75 VALUES ('".$nom."','".$prenom."','".$prenom."')";
76
77 $enr=mysql_query($sql) or die ("Pb avec la requette :".mysql_error());
Essayes avec:
J'avais mis deux fois $prenom
et vérifies bien que tu n'ai pas une erreur dans la dernière ligne de ton fichier inclus "connexion.php"
un ; qui manque par exemple
$sql="INSERT INTO eleve (nom_eleve, pnom_eleve, dat_naiss_eleve) VALUES ('".$nom."','".$prenom."','".$date_naiss."')";
J'avais mis deux fois $prenom
et vérifies bien que tu n'ai pas une erreur dans la dernière ligne de ton fichier inclus "connexion.php"
un ; qui manque par exemple
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai rectifier pour les 2 $prenom, faute d'inattention mais ça fait toujours la même chose.
Si il y avait eu une erreur au niveau de la requette il y aurait écrit "Pb avec la requette" mais ce n'est pas le cas
pour mon inclusion tout est correct, il ne manque pas de ";" non plus.
Savez-vous ce que signifie :
"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 77"
(77 correspond toujours à la même ligne)
?
Si il y avait eu une erreur au niveau de la requette il y aurait écrit "Pb avec la requette" mais ce n'est pas le cas
pour mon inclusion tout est correct, il ne manque pas de ";" non plus.
Savez-vous ce que signifie :
"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\directeur\inscription.php on line 77"
(77 correspond toujours à la même ligne)
?
J'ai 2/3 petites erreurs et maintenant qd je saisi nom, prenom et date de naissance et que je fais Valider ça me dit
"eleve < toto > enregistré."
Par contre qd je vais ds la base de données une ligne correspond à cet enregistrement mais sans les données (vide)
"eleve < toto > enregistré."
Par contre qd je vais ds la base de données une ligne correspond à cet enregistrement mais sans les données (vide)