Problème d'ajout MySQL PHP
Fermé
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
-
28 avril 2009 à 00:20
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 - 29 avril 2009 à 22:12
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 - 29 avril 2009 à 22:12
A voir également:
- Problème d'ajout MySQL PHP
- Easy php - Télécharger - Divers Web & Internet
- Mysql community server - Télécharger - Bases de données
- Comment enlever la limite d'ajout sur snapchat - Forum Snapchat
- Ajout rapide snap - Forum Snapchat
- Demande d'ajout snap qui disparait ✓ - Forum Snapchat
16 réponses
Utilisateur anonyme
28 avril 2009 à 00:30
28 avril 2009 à 00:30
Bonsoir,
Exemple d'une insertion :
L'id n'apparaît pas comme tu le vois et (us,date,titre,texte) correspondent aux champs de ta base de données.
En espérant t'avoir aidé.
Exemple d'une insertion :
mysql_query("INSERT INTO news (us,date,titre,texte) VALUES ('$util','$date','$titre','$texte')");
L'id n'apparaît pas comme tu le vois et (us,date,titre,texte) correspondent aux champs de ta base de données.
En espérant t'avoir aidé.
Bonjour
Si, ta requête est bonne. Je pense que ton problème se situe au niveau de la connexion au serveur.
Essaye
$lnk = mysql_connect("sql.olympe-network.com", "*****", "******") or die (mysql_error());
$db=mysql_select_db("*******") or die (mysql_error());
et pendant que tu y es :
$rep=mysql_query("INSERT INTO membres_espagnol VALUES('', '$pseudo', '$password', '$inscription', '$mail', '$phone', '$blog', '$nom', '$prenom')") or die (mysql_error());
Ça te dira où se trouve l'erreur. Je penche pour la connexion, le nom d'hôte est souvent "localhost", le script tournant sur la même machine que le mysql.
D'une manière générale, il est bon de tester si les fonctions se passent bien. Elles rendent des codes d'erreur, il faut s'en servir.
Si, ta requête est bonne. Je pense que ton problème se situe au niveau de la connexion au serveur.
Essaye
$lnk = mysql_connect("sql.olympe-network.com", "*****", "******") or die (mysql_error());
$db=mysql_select_db("*******") or die (mysql_error());
et pendant que tu y es :
$rep=mysql_query("INSERT INTO membres_espagnol VALUES('', '$pseudo', '$password', '$inscription', '$mail', '$phone', '$blog', '$nom', '$prenom')") or die (mysql_error());
Ça te dira où se trouve l'erreur. Je penche pour la connexion, le nom d'hôte est souvent "localhost", le script tournant sur la même machine que le mysql.
D'une manière générale, il est bon de tester si les fonctions se passent bien. Elles rendent des codes d'erreur, il faut s'en servir.
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
28 avril 2009 à 21:18
28 avril 2009 à 21:18
merci tout le monde, mais le problème, c'est que ça ne peut pas être localhost parceque je suis sur mon site
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
28 avril 2009 à 21:28
28 avril 2009 à 21:28
je pense que c'est un probleme de concatenation...
quand tu mets des variables entre quote elles ne sont pas développés
quand tu mets des variables entre quote elles ne sont pas développés
mysql_query("INSERT INTO membres_espagnol('attribut1',....,'attribut8') VALUES('".$pseudo."', '".$password."', '".$inscription."', '".$mail."', '".$phone."', '".$blog."', '".$nom."', '".$prenom."')");
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ça ne peut pas être localhost parceque je suis sur mon site Bien sûr que si, ça peut être localhost quand même ! Si le script tourne sur la même machine que le serveur sql ! Note que je dis simplement "ça peut être" et pas "c'est forcément". Mais normalement, ton hébergeur a dû te donner le nom de serveur mysql à utiliser, il n'y a pas à jouer aux devinettes pour le trouver.
Il n'y a aucun problème de concaténation, d'ailleurs il n'y a pas de concaténation du tout, les variables sont bien dans une seule et même chaîne entre double quotes. Même si cette chaîne contient aussi des simple quotes, ces simples quotes sont ici des caractères comme les autres et ne délimitent pas de chaîne.
Et si tu tiens à mettre les noms des champs comme le suggèrent Adenora et mype (bien que ce ne soit pas obligatoire du tout), il ne faut surtout pas les mettre entre simple quotes comme dans 'attribut1','attribut2',... mais entre accents graves `attribut1`,`attribut2`,... ou tout simplement sans rien attribut1,attribut2,...
Ce qui serait utile, c'est de connaître le message d'erreur affiché par les die(mysql_error()).
Il n'y a aucun problème de concaténation, d'ailleurs il n'y a pas de concaténation du tout, les variables sont bien dans une seule et même chaîne entre double quotes. Même si cette chaîne contient aussi des simple quotes, ces simples quotes sont ici des caractères comme les autres et ne délimitent pas de chaîne.
Et si tu tiens à mettre les noms des champs comme le suggèrent Adenora et mype (bien que ce ne soit pas obligatoire du tout), il ne faut surtout pas les mettre entre simple quotes comme dans 'attribut1','attribut2',... mais entre accents graves `attribut1`,`attribut2`,... ou tout simplement sans rien attribut1,attribut2,...
Ce qui serait utile, c'est de connaître le message d'erreur affiché par les die(mysql_error()).
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:17
29 avril 2009 à 19:17
Alors, ok, j'ai fait beaucoups de sites (site de gestion de devoirs en SQL pour stoker les devoirs etc..., gestion de matériel stockage etc ... espace membres dans chaques sites etc...) et c'est la 1° fois que ça me le fait ! et quand e mets "or die (mysql_error()); " il ne me dit rien et affiche la page normalement !
que dois faire s'il vous plait !
que dois faire s'il vous plait !
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:27
29 avril 2009 à 19:27
c bon, ça marche, quand je mets le or die(mysql_error()); etc ...
il me dis ça :
"Column count doesn't match value count at row 1" ça signifi quoi ?
Merci
il me dis ça :
"Column count doesn't match value count at row 1" ça signifi quoi ?
Merci
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
29 avril 2009 à 19:29
29 avril 2009 à 19:29
Que tu dois renseigner la 1ère valeur dans ta requete.
J'imagine que c'est l'id de ta table, et que tu ne l'as pas mit en auto_increment.
J'imagine que c'est l'id de ta table, et que tu ne l'as pas mit en auto_increment.
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:31
29 avril 2009 à 19:31
je vais regarder ça tout de suite , 30 secondes...
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:35
29 avril 2009 à 19:35
Pourtant, si ! mon id est en AI ! mais au niveau de action ça doit être quoi ? (Primaire, unique ou index)
Merci bcp !
Merci bcp !
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
29 avril 2009 à 19:42
29 avril 2009 à 19:42
En primaire ou unique, mais c'est forcément le cas, sinon mysql n'aurait pas autorisé l'auto_increment.
Donc ce que je te conseille, et qui est une bonne pratique au passage, est de nommer les colonnes de ta table dans l'insert.
Exemple
Donc ce que je te conseille, et qui est une bonne pratique au passage, est de nommer les colonnes de ta table dans l'insert.
Exemple
INSERT INTO membres_espagnol(pseudo, password, inscription, mail, phone, blog, nom, prenom) VALUES('$pseudo', '$password', '$inscription', '$mail', '$phone', '$blog', '$nom', '$prenom')
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:43
29 avril 2009 à 19:43
mais je ne mets pas le id ?
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 19:50
29 avril 2009 à 19:50
ça ne change rien! que dois-je faire s'il te plait !
P@t@ch0n
Messages postés
565
Date d'inscription
mercredi 15 avril 2009
Statut
Membre
Dernière intervention
28 décembre 2009
85
29 avril 2009 à 19:54
29 avril 2009 à 19:54
Vérifier la valeur de tes variables avant de les insérer dans ta table.
Afficher ton sql pour visualiser ce que ça donne.
Afficher ton sql pour visualiser ce que ça donne.
infor3lmd
Messages postés
111
Date d'inscription
jeudi 16 avril 2009
Statut
Membre
Dernière intervention
13 mai 2009
2
29 avril 2009 à 19:55
29 avril 2009 à 19:55
tu met l'id dans ta requête,car c'est un champs de ta table
alors pour que la requête INSERT marche tu doit indiquer tout les champs de ta table :
alors pour que la requête INSERT marche tu doit indiquer tout les champs de ta table :
INSERT INTO membres_espagnol(id,pseudo, password, inscription, mail, phone, blog, nom, prenom) VALUES('','$pseudo', '$password', '$inscription', '$mail', '$phone', '$blog', '$nom', '$prenom')
jobertomeu
Messages postés
1189
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
5 février 2015
86
29 avril 2009 à 22:12
29 avril 2009 à 22:12
c'est bon, ça marche ! super ! merci bcp a ts le monde c super merci encore à toi en particulier P@t@ch0n !
A+, problème résolu
A+, problème résolu