Rien ne s'enregistre sur la Base de Données.
Résolu/Fermé
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
-
29 mai 2013 à 10:24
Bionik Messages postés 4232 Date d'inscription jeudi 19 août 2010 Statut Modérateur Dernière intervention 3 août 2016 - 29 mai 2013 à 14:55
Bionik Messages postés 4232 Date d'inscription jeudi 19 août 2010 Statut Modérateur Dernière intervention 3 août 2016 - 29 mai 2013 à 14:55
A voir également:
- Rien ne s'enregistre sur la Base de Données.
- Désolé l'utilisation de la base de données a expiré epic games - Forum Jeux vidéo
- Formules excel de base - Guide
- Tnt base de données vide - Forum TNT / Satellite / Réception
- Exemple base de données access à télécharger gratuit ✓ - Forum Logiciels
- La zone de données passée à un appel système est insuffisante - Windows 11
5 réponses
Utilisateur anonyme
Modifié par kyser soze le 29/05/2013 à 12:01
Modifié par kyser soze le 29/05/2013 à 12:01
Je pense que ce n'est pas une obligation non plus dans le sens où s'il reconnait bien l'envoi par le bouton submit, les autres champs seront soumis aussi, il pourront être vide mais ils existeront. Il faudrait vérifier en plus : !empty($_POST['Prenom'])
Je pense que tu avais un défaut d'index car tes champs input ne possèdent pas l'attribut name dont tu a besoin pour récupérer les variables :
Pour un élément tel que
<input type="text" name="Prenom" />
Tu récupère avec :
$_POST['Prenom']
Du coup tu n'as peut être plus d'erreur d'index mais les conditions ne sont pas remplies et tes variables($Nom, $Prenom..) sont surement vides.
Il y a plsieurs petites chose qui posent problème..
Résolu? ===> [RESOLU]
Je pense que tu avais un défaut d'index car tes champs input ne possèdent pas l'attribut name dont tu a besoin pour récupérer les variables :
Pour un élément tel que
<input type="text" name="Prenom" />
Tu récupère avec :
$_POST['Prenom']
Du coup tu n'as peut être plus d'erreur d'index mais les conditions ne sont pas remplies et tes variables($Nom, $Prenom..) sont surement vides.
Il y a plsieurs petites chose qui posent problème..
Résolu? ===> [RESOLU]
Utilisateur anonyme
29 mai 2013 à 11:26
29 mai 2013 à 11:26
Salut salut,
Tout d'abord dans ton code es tu sûr que isset($_POST['Nom']) retourne une variable, pour moi isset renvoie vrai ou faux.
Est ce que tu as des messages d'erreur ça nous aidera à t'aider plus rapidement.
Tout d'abord dans ton code es tu sûr que isset($_POST['Nom']) retourne une variable, pour moi isset renvoie vrai ou faux.
Est ce que tu as des messages d'erreur ça nous aidera à t'aider plus rapidement.
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
12
29 mai 2013 à 11:45
29 mai 2013 à 11:45
Je n'ai aucun message d'erreur , cela fait comme une actualisation de page quand j'appuye sur le bouton enregistrer , les champs du formulaire ce réinitialise.
SkollLegions
Messages postés
52
Date d'inscription
mardi 28 mai 2013
Statut
Membre
Dernière intervention
5 juillet 2013
6
29 mai 2013 à 11:28
29 mai 2013 à 11:28
Tu oublies le nom des champs dans la requête.
Elle devrait plutôt ressembler à ça :
$sql='INSERT INTO utilisateur(ID, NOM, PRENOM) VALUES("","'.$Nom.'","'.$Prenom.'")';
En admettant bien sûr que tes champs s'appellent ID, NOM et PRENOM. A toi de remplacer !
Elle devrait plutôt ressembler à ça :
$sql='INSERT INTO utilisateur(ID, NOM, PRENOM) VALUES("","'.$Nom.'","'.$Prenom.'")';
En admettant bien sûr que tes champs s'appellent ID, NOM et PRENOM. A toi de remplacer !
SkollLegions
Messages postés
52
Date d'inscription
mardi 28 mai 2013
Statut
Membre
Dernière intervention
5 juillet 2013
6
29 mai 2013 à 11:40
29 mai 2013 à 11:40
Ah ouais ? Bon, j'ai appris un truc ! ça fait longteeeeemps que j'ai pas touché à ces machins...
Sinon, je me pose une question là, dans cette partie :
<?php
if(isset($_POST['envoyer']))
{
$Nom=isset($_POST['Nom']);
$Prenom=isset($_POST['Prenom']);
$Age=isset($_POST['Age']);
Est ce que les trois "isset" avant les $_POST sont utiles ?
Sinon, je me pose une question là, dans cette partie :
<?php
if(isset($_POST['envoyer']))
{
$Nom=isset($_POST['Nom']);
$Prenom=isset($_POST['Prenom']);
$Age=isset($_POST['Age']);
Est ce que les trois "isset" avant les $_POST sont utiles ?
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
12
29 mai 2013 à 11:42
29 mai 2013 à 11:42
Je les ai rajouté car j'avais une erreur Sql d'index , normalement je ne les met pas.
Bionik
Messages postés
4232
Date d'inscription
jeudi 19 août 2010
Statut
Modérateur
Dernière intervention
3 août 2016
184
29 mai 2013 à 13:08
29 mai 2013 à 13:08
Salut,
Normal, t'as un problème à ce niveau:
$Nom=isset($_POST['Nom']);
$Prenom=isset($_POST['Prenom']);
$Age=isset($_POST['Age']);
isset est une fonction qui renverra true ou false, donc dans tes variables $Nom, $Prenom et $Age c'est true ou false qui s'y trouve.
Enlève les isset et échappes les données que t'as reçu du formulaire aavec htmlspecialchars avant de les insérer dans ta base de données vu que t'utilises pas de requête préparée.
Normal, t'as un problème à ce niveau:
$Nom=isset($_POST['Nom']);
$Prenom=isset($_POST['Prenom']);
$Age=isset($_POST['Age']);
isset est une fonction qui renverra true ou false, donc dans tes variables $Nom, $Prenom et $Age c'est true ou false qui s'y trouve.
Enlève les isset et échappes les données que t'as reçu du formulaire aavec htmlspecialchars avant de les insérer dans ta base de données vu que t'utilises pas de requête préparée.
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
12
29 mai 2013 à 13:40
29 mai 2013 à 13:40
Si je remplace les "isset" par "htmlspecialchars" , lors de la validation du formulaire j'ai une erreur : Notice: Undefined index: Nom in E:\xampp\htdocs\Site\Enregistrement.php on line 110
Pareil pour les autres variables.
Pareil pour les autres variables.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
12
29 mai 2013 à 14:23
29 mai 2013 à 14:23
Voici le nouveau code , compte tenu de vos réponce (j'ai fait au mieu je ne suis que un debutant en php)
<?php
if(isset($_POST['envoyer']))
{
if (!empty($_POST['Nom'])&&!empty($_POST['Prenom']))
{
$Name=htmlspecialchars($_POST['Nom']);
$Prename=htmlspecialchars($_POST['Prenom']);
$base=mysql_connect('localhost','root','root');
mysql_select_db('test1');
$sql='INSERT INTO utilisateur VALUES("","'.$Name.'","'.$Prename.'")';
mysqli_query($base,$sql);
mysqli_close($base);
}
}
?>
<?php
if(isset($_POST['envoyer']))
{
if (!empty($_POST['Nom'])&&!empty($_POST['Prenom']))
{
$Name=htmlspecialchars($_POST['Nom']);
$Prename=htmlspecialchars($_POST['Prenom']);
$base=mysql_connect('localhost','root','root');
mysql_select_db('test1');
$sql='INSERT INTO utilisateur VALUES("","'.$Name.'","'.$Prename.'")';
mysqli_query($base,$sql);
mysqli_close($base);
}
}
?>
Bionik
Messages postés
4232
Date d'inscription
jeudi 19 août 2010
Statut
Modérateur
Dernière intervention
3 août 2016
184
29 mai 2013 à 14:33
29 mai 2013 à 14:33
Essaies de suivre le conseil de kyser en ajoutant un attribut name dans tes input comme ceci:
Le reste tu changes pas, ça devrait fonctionner maintenant!
<center><form action="" method="post"> <div> <label for="nom">Nom :</label> <input type="text" id="Nom" name="Nom" /> </div> <div> <label for="prenom">Prenom :</label> <input type="text" id="Prenom" name="Prenom"/> </div> <div class="button"> <button name="envoyer" type="submit">Enregistrement</button> </div>
Le reste tu changes pas, ça devrait fonctionner maintenant!
lDarkRaven
Messages postés
72
Date d'inscription
mercredi 29 mai 2013
Statut
Membre
Dernière intervention
3 février 2016
12
29 mai 2013 à 14:42
29 mai 2013 à 14:42
En effet cela fonctionne :)
Je vous remercie grandement pour l'aide que vous m'avez apporté.
Je vous remercie grandement pour l'aide que vous m'avez apporté.
Bionik
Messages postés
4232
Date d'inscription
jeudi 19 août 2010
Statut
Modérateur
Dernière intervention
3 août 2016
184
29 mai 2013 à 14:55
29 mai 2013 à 14:55
Cool alors, continue de persévérer et n'hésite pas à revenir si t'as d'autres problèmes.