Erreur sql à l'insertion dans la database
glodybiss
Messages postés
440
Date d'inscription
Statut
Membre
Dernière intervention
-
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Une erreur mysql que je n'arrive pas à résoudre, veuillez s'il vous plait !
Voici les codes de ma pages ici que les tables de ma base des données.
Ma table client
Une erreur mysql que je n'arrive pas à résoudre, veuillez s'il vous plait !
Notice: Use of undefined constant client - assumed 'client' in C:\wamp\www\internetService\nouveauClient.php on line 22 Erreur SQL !INSERT INTO 'client' ('id', 'nom', 'prenom', 'pass', 'matricule', 'date') client VALUES("id", Glody",Gabin", "c1ebb4933e06ce5617483f665e26627c", "CYB001",2011-11-10 08:35:40") 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 'client VALUES("id", Glody",Gabin", "c1ebb4933e06ce5617483f665e26627c", "CYB001",' at line 1
Voici les codes de ma pages ici que les tables de ma base des données.
Ma table client
CREATE TABLE IF NOT EXISTS 'client' ( 'id' int(11) NOT NULL AUTO_INCREMENT, 'nom' varchar(100) COLLATE utf8_unicode_ci NOT NULL, 'prenom' varchar(60) COLLATE utf8_unicode_ci NOT NULL, 'pass' varchar(255) COLLATE utf8_unicode_ci NOT NULL, 'matricule' varchar(100) COLLATE utf8_unicode_ci NOT NULL, 'date' datetime NOT NULL, PRIMARY KEY ('id'), UNIQUE KEY 'id_client_UNIQUE' ('id') ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=2 ;
<?php $serveur = getenv("SERVER_NAME"); $chez_moi=($serveur=="localhost"); if($chez_moi)include_once 'cfg.php'; else include_once 'cfg2.php'; if (isset($_POST['Enregistrer']) && $_POST['Enregistrer'] == 'Enregistrer') { if ((isset($_POST['nom']) && !empty($_POST['nom'])) && (isset($_POST['prenom']) && !empty($_POST['prenom'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && (isset($_POST['matricule']) && !empty($_POST['matricule'])) ) { if ($_POST['pass'] != $_POST['pass_confirm']) { $erreur = 'Non concordance des passwords fournis.'; } else { $base = mysql_connect (DB_HOST, USER_NAME, PASSE_WORD); mysql_select_db (DATA_BASE, $base); if ($base [0] == 0) { $sql = 'INSERT INTO 'client' ('id', 'nom', 'prenom', 'pass', 'matricule', 'date') '.client.' VALUES("id", '.mysql_escape_string($_POST['nom']).'",'.mysql_escape_string($_POST['prenom']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['matricule']).'",'.date('Y-m-d h:i:s').'")'; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error()); session_start(); $_SESSION['nom'] = $_POST['nom']; header('Location: '.PAGE_PRIVATE.''); exit(); } else { $erreur = 'Ce nom est déjà utilisé'; } } } else { $erreur = 'Au moins un des champs est vide.'; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Ajout nouvel agent | Support AppManga Cybernet </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="style/styles.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="boxAgent"> <form action="" method="post" name="form1" id="form1"> <table width="350" border="0" class="left"> <?php if (isset($erreur)) { echo '<div id="info" class="error">'.$erreur.'</div><!--error-->'; } ?> <h3>Nouveau Client</h3> <tr> <td class="td">Nom</td> <td> <input type="text" name="nom" class="input_ajout_agent" value="<?php if (isset($_POST['nom'])) echo htmlentities(trim($_POST['nom'])); ?>" ></td> </tr> <tr> <td>Prenom</td> <td > <input type="text" name="prenom" class="input_ajout_agent" value="<?php if (isset($_POST['prenom'])) echo htmlentities(trim($_POST['prenom'])); ?>" ></td> </tr> <tr> <td>Mot de passe</td> <td > <input type="password" name="pass" class="input_ajout_agent" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>" ></td> </tr> <tr> <td>Confirmer</td> <td > <input type="password" name="pass_confirm" class="input_ajout_agent" value="<?php if (isset($_POST['pass_confirm'])) echo htmlentities(trim($_POST['pass_confirm'])); ?>" ></td> </tr> <tr> <td>Matricule</td> <td> <input type="text" class="input_ajout_agent" name="matricule" value="<?php if (isset($_POST['matricule'])) echo htmlentities(trim($_POST['matricule'])); ?>"></td> </tr> <tr> <td>Fonction</td> <td><input type="text" name="fonction" class="input_ajout_agent" value="<?php if (isset($_POST['fonction'])) echo htmlentities(trim($_POST['fonction'])); ?>" ></td> </tr> <tr> <td></td> <td><input type="submit" name="Enregistrer" class="submi" value="Enregistrer" /></td> </tr> </table> </form></div> </body> </html>
A voir également:
- Erreur sql à l'insertion dans la database
- Borland database engine - Télécharger - Édition & Programmation
- Touche insertion clavier - Guide
- Insertion sommaire word - Guide
- Insertion liste déroulante excel - Guide
- Erreur 0x80070643 - Accueil - Windows
3 réponses
Bonjour,
Il me semble que lors de l'inscription de données dans la table, il faut mettre des [] autour de(s) ligne(s) dans lesquelles tu veux mettre des données.
Je ne pense pas que cela règle totalement ton problème mais c'est peut-être un début.
Il me semble que lors de l'inscription de données dans la table, il faut mettre des [] autour de(s) ligne(s) dans lesquelles tu veux mettre des données.
Je ne pense pas que cela règle totalement ton problème mais c'est peut-être un début.
Salut
Essaye ceci dans ta requête:
Essaye ceci dans ta requête:
$sql = 'INSERT INTO client (id, nom, prenom, pass, matricule, date) VALUES("id", '.mysql_escape_string($_POST['nom']).'",'.mysql_escape_string($_POST['prenom']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['matricule']).'",'.date('Y-m-d h:i:s').'")'; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());
Y'a surtout des problèmes avec les guillements:
INSERT INTO 'client' ('id', 'nom', 'prenom', 'pass', 'matricule', 'date') client VALUES("id", Glody",Gabin", "c1ebb4933e06ce5617483f665e26627c", "CYB001",2011-11-10 08:35:40")
Tu les fermes mais les ouvre pas.
Donc:
D'autre part, ta colonne id est en auto_increment.
Tu n'as donc pas besoin de la spécifié dans ta requête:
INSERT INTO 'client' ('id', 'nom', 'prenom', 'pass', 'matricule', 'date') client VALUES("id", Glody",Gabin", "c1ebb4933e06ce5617483f665e26627c", "CYB001",2011-11-10 08:35:40")
Tu les fermes mais les ouvre pas.
Donc:
$sql = 'INSERT INTO client (id, nom, prenom, pass, matricule, date) VALUES ("id", "'.mysql_escape_string($_POST['nom']).'", "'.mysql_escape_string($_POST['prenom']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['matricule']).'", "'.date('Y-m-d h:i:s').'")';
D'autre part, ta colonne id est en auto_increment.
Tu n'as donc pas besoin de la spécifié dans ta requête:
$sql = 'INSERT INTO client (nom, prenom, pass, matricule, date) VALUES ("'.mysql_escape_string($_POST['nom']).'", "'.mysql_escape_string($_POST['prenom']).'", "'.mysql_escape_string(md5($_POST['pass'])).'", "'.mysql_escape_string($_POST['matricule']).'", "'.date('Y-m-d h:i:s').'")';