PHP ET MYSQL
Résolu/Fermé
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
-
1 mai 2009 à 17:46
le père - 1 mai 2009 à 23:08
le père - 1 mai 2009 à 23:08
A voir également:
- PHP ET MYSQL
- Easy php - Télécharger - Divers Web & Internet
- Mysql download - Télécharger - Bases de données
- Php?id=1 - Forum PHP
- Get_magic_quotes_gpc php 8 ✓ - Forum PHP
- Bouton php - Forum PHP
38 réponses
infor3lmd
Messages postés
111
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
13 mai 2009
2
1 mai 2009 à 20:13
1 mai 2009 à 20:13
ben je suis pas fort en sql mais
peut être le problème vient du fait que tu n'as pas de clé primaire dans ta table
pourquoi tu ne met pas un champ nommé 'id' auto-increment et qui soit t'as clé primaire tu ne va rien perdre
peut être le problème vient du fait que tu n'as pas de clé primaire dans ta table
pourquoi tu ne met pas un champ nommé 'id' auto-increment et qui soit t'as clé primaire tu ne va rien perdre
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 20:17
1 mai 2009 à 20:17
jvais essayer de metre un simple numero en clé primaire auto increment mai s doi je le signaler dans ma page php ou juste mettre des cotes dans la requete?
infor3lmd
Messages postés
111
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
13 mai 2009
2
1 mai 2009 à 20:25
1 mai 2009 à 20:25
non pas un simple numéro,un simple champs nommé id entier auto-incrément
et ce champs c'est lui qui affecte des numéro a tes enregistrements et dans ton code php tu le signal juste dans ta requete sql avec des '' vide
et ce champs c'est lui qui affecte des numéro a tes enregistrements et dans ton code php tu le signal juste dans ta requete sql avec des '' vide
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 21:20
1 mai 2009 à 21:20
ya plus personne pour maider?? toujours pas résolu mon probleme qui peut m'aider??^^
merci à vous
merci à vous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 22:09
1 mai 2009 à 22:09
donc j'ai toujours le meme probleme je n'arrive pas a insérer les données de mon formulaire dans ma base mysql
j'ai modifié le script au plus simple mais visiblement ca change rien je comprend pas je débute en plus c est la galère! J'ai aucune erreur qui s'affiche et aucune donnée qui s'ajoute!!
ma clé primaire de la table c'est l'id autoincrement! ton aide est la bienvenue!
voici mon script :
<?php
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$telephone = $_POST['telephone'];
$mail = $_POST['mail'];
$message = $_POST['message'];
mysql_query("INSERT INTO clients(nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES('', '".$nom."', '".$prenom."', '".$adresse."', '".$codepostal."', '".$ville."', '".$telephone."', '".$mail."', '".$mail."', '".$message."')");
}
mysql_close ();
?>
j'ai modifié le script au plus simple mais visiblement ca change rien je comprend pas je débute en plus c est la galère! J'ai aucune erreur qui s'affiche et aucune donnée qui s'ajoute!!
ma clé primaire de la table c'est l'id autoincrement! ton aide est la bienvenue!
voici mon script :
<?php
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$telephone = $_POST['telephone'];
$mail = $_POST['mail'];
$message = $_POST['message'];
mysql_query("INSERT INTO clients(nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES('', '".$nom."', '".$prenom."', '".$adresse."', '".$codepostal."', '".$ville."', '".$telephone."', '".$mail."', '".$mail."', '".$message."')");
}
mysql_close ();
?>
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:13
1 mai 2009 à 22:13
rajoute deja un champ id type int(11) autoincrement.
une clef dans ta config de table est nécessaire sinon je t'explique pas le basard pour retrouver un enregistrement.. ;-)
ensuite :
place un print_r($_POST) au debut de ta page histoire de voir si tu recupere bien tes valeurs post
puis
comme ça si ca marche ca te le dis et si ca marche pas tu vois ce que tu insere et ou tu l'insere
et pourquoi tu met une { ici
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
si tu a viré ton if isset il faut les enlever
une clef dans ta config de table est nécessaire sinon je t'explique pas le basard pour retrouver un enregistrement.. ;-)
ensuite :
place un print_r($_POST) au debut de ta page histoire de voir si tu recupere bien tes valeurs post
puis
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'"') or die (mysql_error()); if($req) { echo 'enregisttrement reussi'; } else { echo' un probleme est survenu<br/>'.$req; }
comme ça si ca marche ca te le dis et si ca marche pas tu vois ce que tu insere et ou tu l'insere
et pourquoi tu met une { ici
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
si tu a viré ton if isset il faut les enlever
Même pour un débutant, il y a des erreurs grossières dans ta requête, que tu n'avais pas dans ton premier message. Merci à ceux qui t'ont aidé à ajouter des erreurs là où il n'y en avait pas au lieu de t'aider à résoudre le vrai problème.
Si tu mets les noms des champs dans la requête, il faut qu'ils correspondent aux values. donc pas de '' (qui correspondait à un champ autoincrémenté que tu ne mets pas dans la liste) et une seule fois $mail
Et à la fin du mysql_query, ajoute un or die (mysql_error()) pour le cas où il y resterait un problème.
Si tu mets les noms des champs dans la requête, il faut qu'ils correspondent aux values. donc pas de '' (qui correspondait à un champ autoincrémenté que tu ne mets pas dans la liste) et une seule fois $mail
Et à la fin du mysql_query, ajoute un or die (mysql_error()) pour le cas où il y resterait un problème.
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:24
1 mai 2009 à 22:24
oupss c'est exact que dans ma 1ere reponse j'ai rajouté le nom des champs et laisser le '' des values merci ctrlC .. lol !
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 22:26
1 mai 2009 à 22:26
bon jai ajouté ce que tu m'a dit il m'indique ca maintenant mais je vois tjs pas quelle erreur j'aurais pu faire
Pour ce qui est de la clé j'avai déja mi une clé primaire (5) je vois pas ce que ta voulu me dire
voici l'erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
et mon script :
<?php
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$telephone = $_POST['telephone'];
$mail = $_POST['mail'];
$message = $_POST['message'];
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'"') or die (mysql_error());
}
if($req)
{
echo 'enregisttrement reussi';
}
else
{
echo' un probleme est survenu<br/>'.$req;
}
mysql_close ();
?>
Pour ce qui est de la clé j'avai déja mi une clé primaire (5) je vois pas ce que ta voulu me dire
voici l'erreur :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
et mon script :
<?php
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base');
mysql_select_db("camping")OR die('Erreur de sélection de la base');
{
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$telephone = $_POST['telephone'];
$mail = $_POST['mail'];
$message = $_POST['message'];
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'"') or die (mysql_error());
}
if($req)
{
echo 'enregisttrement reussi';
}
else
{
echo' un probleme est survenu<br/>'.$req;
}
mysql_close ();
?>
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:29
1 mai 2009 à 22:29
<?php mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base'); mysql_select_db("camping")OR die('Erreur de sélection de la base'); //{ => inutile $nom = $_POST['nom']; $prenom = $_POST['prenom']; $adresse = $_POST['adresse']; $codepostal = $_POST['codepostal']; $ville = $_POST['ville']; $telephone = $_POST['telephone']; $mail = $_POST['mail']; $message = $_POST['message']; $req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'"') or die (mysql_error()); //} => inutile if($req) { echo 'enregisttrement reussi'; } else { echo' un probleme est survenu<br/>'.$req; } mysql_close ();
ca devrais marcher tu lui colle des {} alors qu'il y a plus de conditions
les { } n'empêchent pas de marcher.
Pas besoin de suggérer des manips qui n'ont aucun rapport avec le problème
Surtout qu'il faudra les remettre après quand il remettra les conditions
Pas besoin de suggérer des manips qui n'ont aucun rapport avec le problème
Surtout qu'il faudra les remettre après quand il remettra les conditions
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:37
1 mai 2009 à 22:37
oui mai lo on essaye de debogger un code simple alors autant faire simple .. ;-) non ?
apart l'utilisation melangée des ' et des " franchement je vois pas ou peut etre l'erreur (et c'est mon job..)
ton code
mon code
apart l'utilisation melangée des ' et des " franchement je vois pas ou peut etre l'erreur (et c'est mon job..)
ton code
mysql_connect("localhost", "root", "")OR die('Erreur de sélection de la base'); mysql_select_db("camping")OR die('Erreur de sélection de la base');
mon code
mysql_connect('localhost', 'root' '')OR die('Erreur de sélection de la base'); mysql_select_db('camping')OR die('Erreur de sélection de la base');
il manque une ) à la fin de la requête
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'")') or die (mysql_error());
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'")') or die (mysql_error());
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:43
1 mai 2009 à 22:43
bien vu ;-)
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:52
1 mai 2009 à 22:52
$req=mysql_query('INSERT INTO clients (nom, prenom, adresse, codepostal, ville, telephone, mail, message) VALUES("'.$nom.'", "' .$prenom.'", "'.$adresse.'", "'.$codepostal.'", "'.$ville.'", "'.$telephone.'", "'.$mail.'", "'.$message.'"') );
euh j'ai retapé la requete en virant le or die ,
les ( sont correctes il me semble ..
euh j'ai retapé la requete en virant le or die ,
les ( sont correctes il me semble ..
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 22:52
1 mai 2009 à 22:52
je sais pas d'ou venait mon erreur mais un grand merci a vous deux ca fonctionne ENFINNNNNNNNN
j'vais bien dormir cette nuit^^
j'vais bien dormir cette nuit^^
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:53
1 mai 2009 à 22:53
et elle venait d'ou ton erreur ?
le père
>
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
1 mai 2009 à 22:57
1 mai 2009 à 22:57
la sienne je ne sais pas, mais je peux te montrer celle de ton message 39
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
>
le père
1 mai 2009 à 22:58
1 mai 2009 à 22:58
ah ?
edit je crois que j'ai vu..
j'ai mis ça "''));
alors que c'etait ca
"') ');
l'erreur est humaine et la fatigue aussi lol !..
edit je crois que j'ai vu..
j'ai mis ça "''));
alors que c'etait ca
"') ');
l'erreur est humaine et la fatigue aussi lol !..
le père
>
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
1 mai 2009 à 23:08
1 mai 2009 à 23:08
C'est bien d'être indulgent avec soi-même...
Errare humanum est, perseverare diabolicum... et dans le genre perseverare tu as fait assez fort
Errare humanum est, perseverare diabolicum... et dans le genre perseverare tu as fait assez fort
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 22:56
1 mai 2009 à 22:56
je sais pas j'ai tellement fait de modif tte cet aprem que franchment je suis incapable de le dire en tt cas votre requete fonctionne a merveille !merci bcp
lewis34
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
352
1 mai 2009 à 22:57
1 mai 2009 à 22:57
de rien ;-)
damien35
Messages postés
80
Date d'inscription
lundi 18 février 2008
Statut
Membre
Dernière intervention
1 décembre 2009
1 mai 2009 à 23:02
1 mai 2009 à 23:02
ouai jveu bien !!