Erreur INSERT INTO !
Fermé
Azepo
-
2 déc. 2012 à 18:20
dwieser Messages postés 225 Date d'inscription samedi 25 avril 2009 Statut Membre Dernière intervention 29 janvier 2013 - 15 déc. 2012 à 02:01
dwieser Messages postés 225 Date d'inscription samedi 25 avril 2009 Statut Membre Dernière intervention 29 janvier 2013 - 15 déc. 2012 à 02:01
A voir également:
- Erreur INSERT INTO !
- Erreur 0x80070643 - Accueil - Windows
- Touche insert - Guide
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Disk boot failure insert system disk and press enter - Guide
4 réponses
astuces72
Messages postés
7762
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
15 novembre 2024
1 639
Modifié par astuces72 le 2/12/2012 à 18:47
Modifié par astuces72 le 2/12/2012 à 18:47
enlève '',
('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
astuces72
Messages postés
7762
Date d'inscription
vendredi 15 janvier 2010
Statut
Membre
Dernière intervention
15 novembre 2024
1 639
2 déc. 2012 à 20:44
2 déc. 2012 à 20:44
nan mais enlève que le 1er qui doit correspondre à un id unique de ta base, que tu as du mettre !
<?php
mysql_connect("localhost", "librydoc","31p71h49" );//on se connecte à MySQL
mysql_select_db("librydoc"); //On selectionne la base
//on commence par récupérer les valeurs des champs
mysql_query("INSERT INTO notices (titre, auteur, dtp, editeur, collection, collation, isbn, ncol, nature, genre, genre2, prix, mcl, description)
VALUES ('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
mysql_close();// facultative, on ferme la connexion
?>
ou ça
<?php
mysql_connect("localhost", "librydoc","31p71h49" );//on se connecte à MySQL
mysql_select_db("librydoc"); //On selectionne la base
//on commence par récupérer les valeurs des champs
mysql_query("INSERT INTO notices VALUES ('', '$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
mysql_close();// facultative, on ferme la connexion
?>
<?php
mysql_connect("localhost", "librydoc","31p71h49" );//on se connecte à MySQL
mysql_select_db("librydoc"); //On selectionne la base
//on commence par récupérer les valeurs des champs
mysql_query("INSERT INTO notices (titre, auteur, dtp, editeur, collection, collation, isbn, ncol, nature, genre, genre2, prix, mcl, description)
VALUES ('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
mysql_close();// facultative, on ferme la connexion
?>
ou ça
<?php
mysql_connect("localhost", "librydoc","31p71h49" );//on se connecte à MySQL
mysql_select_db("librydoc"); //On selectionne la base
//on commence par récupérer les valeurs des champs
mysql_query("INSERT INTO notices VALUES ('', '$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
mysql_close();// facultative, on ferme la connexion
?>
Utilisateur anonyme
Modifié par le père. le 3/12/2012 à 09:31
Modifié par le père. le 3/12/2012 à 09:31
Bonjour
La requête que tu avais écrite dans ton premier message était presque correcte, il n'y avait à corriger que la chaine vide dans VALUES qui ne correspond à aucun des champs déclarés .
Le message d'erreur le disait : la variable $titre n'est pas définie. C'est une erreur PHP, pas une erreur mySQL.
Il ne faut pas confondre les variables PHP et les noms des champs d'une table de base de données. Même si souvent on donne le même nom car c'est plus pratique.
Dans ton cas, d'où vient la variable $titre, qui contient la valeur que tu veux donner au champ titre ? De nulle part, on ne voit pas avant de $titre=quelquechose. Donc cette variable est bien indéfinie comme le dit le message d'erreur.
Si ces valeurs sont cesées venir d'un formulaire, tu devrais avoir (par exemple) :
La requête que tu avais écrite dans ton premier message était presque correcte, il n'y avait à corriger que la chaine vide dans VALUES qui ne correspond à aucun des champs déclarés .
Le message d'erreur le disait : la variable $titre n'est pas définie. C'est une erreur PHP, pas une erreur mySQL.
Il ne faut pas confondre les variables PHP et les noms des champs d'une table de base de données. Même si souvent on donne le même nom car c'est plus pratique.
Dans ton cas, d'où vient la variable $titre, qui contient la valeur que tu veux donner au champ titre ? De nulle part, on ne voit pas avant de $titre=quelquechose. Donc cette variable est bien indéfinie comme le dit le message d'erreur.
Si ces valeurs sont cesées venir d'un formulaire, tu devrais avoir (par exemple) :
if (isset($_POST['titre'])) { // si c'est bien un envoi de formulaire $titre=$_POST['titre']; $auteur=$_POST['auteur']; ... // et seulement après, ta requête, quand toutes tes variables PHP sont définies. mysql_connect("localhost", "librydoc","31p71h49" );//on se connecte à MySQL mysql_select_db("librydoc"); //On selectionne la base //on commence par récupérer les valeurs des champs mysql_query("INSERT INTO notices (titre, auteur, dtp, editeur, collection, collation, isbn, ncol, nature, genre, genre2, prix, mcl, description) VALUES ('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')"); mysql_close();// facultative, on ferme la connexion ?>
dwieser
Messages postés
225
Date d'inscription
samedi 25 avril 2009
Statut
Membre
Dernière intervention
29 janvier 2013
9
Modifié par dwieser le 15/12/2012 à 02:38
Modifié par dwieser le 15/12/2012 à 02:38
bonjour,
attention à la ponctuation
tu devrais prendre quelques cours...............................
j'ai retravaillé ton code
mais quelque chose m'interpelle tu travaille sur wamp
je l'ai vu au dessus
avec wamp tu dois créer une base de données
je doute que tu l'es faite
mysql_connect('localhost', 'librydoc','31p71h49');
ici localhost ok après tu mets 'librydoc' si tu as installé wamp par default c'est 'root' et après 31p71..... ça le mot de passe QUE TU AS MI OK
mysql_select_db('librydoc'); pour ici librydoc, c'est le nom de ta base de données
ce n'est pas le nom d'un dossier ou voir d'un fichier, ça rien à voir
******************************
<?php
mysql_connect('localhost', 'root','31p71h49');
mysql_select_db('librydoc');
*************************************
composition tu devrais avoir une base de nom "librydoc"
tu as une table de nom "notices"
et après tu dois avoir 14 colonnes
********************************************
pour creer ta base de données ouvre ton navigateur pour aller sur internet
et tu remplaces htpp:// MACHIN et tu écris localhost puis entrée
après tu choisis PHPMYADMIN
puis après si tu ne sais pas, tu sais quoi faire......................à plus
Moi je plante et toi tu creuses !!!
attention à la ponctuation
tu devrais prendre quelques cours...............................
j'ai retravaillé ton code
mais quelque chose m'interpelle tu travaille sur wamp
je l'ai vu au dessus
avec wamp tu dois créer une base de données
je doute que tu l'es faite
mysql_connect('localhost', 'librydoc','31p71h49');
ici localhost ok après tu mets 'librydoc' si tu as installé wamp par default c'est 'root' et après 31p71..... ça le mot de passe QUE TU AS MI OK
mysql_select_db('librydoc'); pour ici librydoc, c'est le nom de ta base de données
ce n'est pas le nom d'un dossier ou voir d'un fichier, ça rien à voir
******************************
<?php
mysql_connect('localhost', 'root','31p71h49');
mysql_select_db('librydoc');
*************************************
composition tu devrais avoir une base de nom "librydoc"
tu as une table de nom "notices"
et après tu dois avoir 14 colonnes
********************************************
<?php mysql_connect('localhost', 'librydoc','31p71h49'); mysql_select_db('librydoc'); mysql_query('insert into notices (titre, auteur, dtp, editeur, collection, collation, isbn, ncol, nature, genre, genre2, prix, mcl, description) value ("'.$titre.'", "'.$auteur.'", "'.$dtp.'", "'.$editeur.'", "'.$collection.'", "'.$collation.'", "'.$isbn.'", "'.$ncol.'", "'.$nature."', "'.$genre.'", "'.$genre2.'", "'.$prix.'", "'.$mcl.'", "'.$description.'")'); mysql_close(); ?>
pour creer ta base de données ouvre ton navigateur pour aller sur internet
et tu remplaces htpp:// MACHIN et tu écris localhost puis entrée
après tu choisis PHPMYADMIN
puis après si tu ne sais pas, tu sais quoi faire......................à plus
Moi je plante et toi tu creuses !!!
2 déc. 2012 à 18:43
2 déc. 2012 à 18:47
('$titre','$auteur''$dtp','$editeur','$collection''$collation','$isbn','$ncol''$nature','$genre','$genre2''$prix','$mcl','$description')");
2 déc. 2012 à 18:59
3 déc. 2012 à 07:35
Voici l'erreur retourné pour chaque valeur'titre, auteur....)
Modifié par astuces72 le 3/12/2012 à 07:59
sur toutes les variables ça me semble quand même impossible !!!
tu as bien une table au moins avec "notices" comme nom ?