Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
988 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Syntaxe INSERT INTO

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Syntaxe INSERT INTO

n°1830894
ysolal
Posté le 23-12-2008 à 15:52:09  profilanswer
 

Bonjour,
 
J'ai un petit script php qui ajoute des champs à ma base de donnée MySQL. Rien de très compliqué mais j'ai un problème de syntaxe sur ma requete SQL (Parse error: parse error in C:\wamp\www\Cablage\php\requete\add_driver.php on line 16) et je ne voit plus d'où cela peut venir  :??: (j'ai corriger pas mal d'erreur ... :D )
 

Code :
  1. <?php
  2. require_once("..\..\config.php" );
  3. $db = connect_sql(); // Connexion à la base
  4. mysql_select_db('test', $db); // Selection base
  5. $nom = $_POST['Nom']; // Récupération des variables POST
  6. $lien = $_POST['Lien'];
  7.  if(empty($nom) OR empty($lien))
  8.  {
  9.   $reponse = 'Vous n\'avez pas rempli un ou plusieurs champ(s). <a href="javascript:history.back(1)">Retour au formulaire</a>' ;
  10.  }
  11.  else
  12.  {
  13.   mysql_query ("INSERT INTO drivers ('Nom', 'Lien') VALUES ("`.$nom.`", "`.$lien.`" )"or die("Erreur SQL : <br/>".mysql_error()); // Insertion des données dans la table drivers
  14.   $reponse = 'Vos données on été ajoutées.<br><a href="..\driver.php">Retour</a>' ;
  15.  }
  16.  echo $reponse;
  17.  mysql_close($db); // On ferme la session MySQL  
  18. ?>


 
Si quelqu'un voit l'erreur !
Voila merci d'avance

mood
Publicité
Posté le 23-12-2008 à 15:52:09  profilanswer
 

n°1830896
flo850
moi je
Posté le 23-12-2008 à 15:54:51  profilanswer
 

mauvaise utilisation des `

Code :
  1. $nom = mysql_real_escape_string($nom); // pour eviter que ca te pete a la gueule dès la première apostrophe
  2.  
  3. $lien  = = mysql_real_escape_string($nom);
  4.  
  5. $query = "INSERT INTO drivers ('Nom', 'Lien') VALUES ('$nom','$lien')";
  6. mysql_query($query);


Message édité par flo850 le 23-12-2008 à 15:54:59

---------------

n°1830904
ysolal
Posté le 23-12-2008 à 16:05:57  profilanswer
 

Merci pour ta réponce et en effet c'était bien sa !!!  :bounce:  
 
Par contre il me marque bien que mes données on été ajoutées mais en fait rien du tout  :cry:  
 
Pourquoi donc ?

n°1830932
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 23-12-2008 à 17:06:15  profilanswer
 

un autocommit à OFF ?
et tu pourrais me donner l'adresse de ton site, histoire d'y faire un peu de SQL injection ?


---------------
J'ai un string dans l'array (Paris Hilton)
n°1831070
ysolal
Posté le 24-12-2008 à 08:48:40  profilanswer
 

Bonjour,
 
C'est en fait une application en php qui va tourner en interne et qui n'est donc pas sur le net.
 
Mais je ne comprend pas trop car ma requete est bonne puisque quand je l'execute dans PHPMyAdmin elle marche normalement. Peut être un souci avec mysql_query !
Par contre autocommit à OFF  :heink:


Message édité par ysolal le 24-12-2008 à 08:50:22
n°1831089
flo850
moi je
Posté le 24-12-2008 à 09:34:46  profilanswer
 

echo mysql_error() après ta requête


---------------

n°1831105
ysolal
Posté le 24-12-2008 à 09:58:40  profilanswer
 

il y a déja un

Code :
  1. or die("Erreur SQL : <br/>".mysql_error()

qui ne retourne aucune erreur et qui affiche "Vos données on été ajoutée" mais dans la base il n'y a rien  :ouch:

n°1831106
flo850
moi je
Posté le 24-12-2008 à 10:01:09  profilanswer
 

echo $query; affiche quoi ?  
 


---------------

n°1831112
ysolal
Posté le 24-12-2008 à 10:15:01  profilanswer
 

ça affiche ma requete (j'ai rentré aaa en nom et aaa en lien) :
 
INSERT INTO drivers ('Nom', 'Lien') VALUES ('aaa','aaa')
 
qui parait bonne non ?

n°1831122
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-12-2008 à 10:24:53  profilanswer
 

y'a pas un AUTOCOMMIT sur MySQL ?


---------------
J'ai un string dans l'array (Paris Hilton)
mood
Publicité
Posté le 24-12-2008 à 10:24:53  profilanswer
 

n°1831123
flo850
moi je
Posté le 24-12-2008 à 10:25:20  profilanswer
 

pour le desactiver il faut vraiment le faire exprès


---------------

n°1831136
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-12-2008 à 10:30:03  profilanswer
 

il est sur ON par défaut ? [:ohmyeyes]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1831140
ysolal
Posté le 24-12-2008 à 10:32:06  profilanswer
 

je pense vu que je n'est rien touché et que j'ai d'autres requetes du même type qui fonctionnent

n°1831146
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-12-2008 à 10:33:28  profilanswer
 

mais faut le désactiver immédiatement [:pingouino]
ça n'a rien à voir avec ton souci, mais un AUTOCOMMIT sur ON, c'est hyper dangereux quoi [:pingouino]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1831147
Profil sup​primé
Posté le 24-12-2008 à 10:33:55  answer
 

je savais pas que l'on pouvait utiliser des guillements simples pour les noms de champs. Je pensais que l'on pouvait seulement utiliser des backquotes :??:

n°1831148
flo850
moi je
Posté le 24-12-2008 à 10:34:01  profilanswer
 

Harkonnen a écrit :

il est sur ON par défaut ? [:ohmyeyes]


en fait, par defaut, il n'y a pas la notion de commit. Il faut changer de moteur de bdd pour pouvoir le mettre a off


---------------

n°1831165
ysolal
Posté le 24-12-2008 à 10:41:17  profilanswer
 

j'utilise wamp pour faire des tests donc je croi pas qui n'y est d'autocommit vu que je ne l'est mis sur ON (ni sur OFF d'ailleurs) nul part

n°1831186
ysolal
Posté le 24-12-2008 à 10:50:43  profilanswer
 

C'est bon  :bounce:  
 
C'était une erreur de syntaxe bidon (il n'y a pas de ' ' entre les nom des champs)
 

Code :
  1. INSERT INTO drivers (Nom, Lien) VALUES ('aaa','aaa')


 
Merci à tous


Message édité par ysolal le 24-12-2008 à 10:50:59
n°1831195
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-12-2008 à 10:56:22  profilanswer
 

'tain, bravo luc@s, j'avais même pas fait gaffe tellement j'imaginais pas un truc aussi gros [:prozac]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1831198
flo850
moi je
Posté le 24-12-2008 à 10:57:10  profilanswer
 


[:roi]


---------------

n°1831199
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 24-12-2008 à 10:58:28  profilanswer
 

comment il nous a blousé le môme, j'en reviens pas [:implosion du tibia]


---------------
J'ai un string dans l'array (Paris Hilton)
n°1831203
flo850
moi je
Posté le 24-12-2008 à 11:02:07  profilanswer
 

il est vraiment bon , il y a du potentiel


---------------

n°1831209
Profil sup​primé
Posté le 24-12-2008 à 11:08:57  answer
 

[:ptiteplume]

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Syntaxe INSERT INTO

 

Sujets relatifs
syntaxe pour passage variables Java -> FlashRequête SQL ORDER BY... syntaxe
[optimisation] fichier txt -> insert base de donnéeexemple syntaxe dictionnaire des données oracle
Equivalent mysql_insert_id() pour MDB2 ?requête mysql : insert into where exists ?
[Résolu] Syntaxe : getElementById avec une variable[SQL] Erreur syntaxe [RESOLU]
[ASP.NET][Resolu] Erreur de syntaxe sur un INSERT INTOProblème de syntaxe "Insert Into Values"
Plus de sujets relatifs à : Syntaxe INSERT INTO


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR