INSERT INTO avec AUTO_INCREMENT sur phpmyadmin
Résolu/Fermé7 réponses
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
Modifié par jeremy.s le 14/05/2013 à 17:22
Modifié par jeremy.s le 14/05/2013 à 17:22
Salut !
Peux tu donné tout ton code ? Avec l'objet utilisé pour la PDO (mysql_connect, pdo, mysqli, etc...)
Et également ton formulaire HTML :)
Mais à première vue c'est une problème de cote / double cote !
Jérémy
Peux tu donné tout ton code ? Avec l'objet utilisé pour la PDO (mysql_connect, pdo, mysqli, etc...)
Et également ton formulaire HTML :)
Mais à première vue c'est une problème de cote / double cote !
Jérémy
<!DOCTYPE HTML>
<html>
<head><title>Ajouter un nouveau client</title></head>
<meta charset="UTF-8"/>
<body>
<?php
if($_GET)
{
?>
<form name="frm" action="ajoutClient.php" method="POST">
Num: <input type="text" name="num" size="5" value="<?php echo $_GET["num"]; ?>" readonly /><br />
<br>Nom: <input type="text" name="nom" size="20" value="<?php echo $_GET["name"]; ?>" /><br />
<br>Prénom: <input type="text" name="prenom" size="20" value="<?php echo $_GET["prenom"]; ?>"/><br />
<br>Adresse: <input type="text" name="adresse" size="35" value="<?php echo $_GET["adresse"]; ?>" /><br />
<br>Code Postale: <input type="text" name="cp" size="5" value="<?php echo $_GET["cp"]; ?>"/><br />
<br>Ville: <input type="text" name="ville" size="20" value="<?php echo $_GET["city"]; ?>"/><br />
<br>Adresse mail: <input type="text" name="mail" size="30" value="<?php echo $_GET["mail"]; ?>"/><br />
<br>Téléphone <input type="text" name="tel" size="20" value="<?php echo $_GET["tel"]; ?>"/><br />
<br> <input type="submit" name="Bt_ajouter" value="Ajouter"/>
<input type="reset" name="Bt_Annuler" value="Annuler"/><br />
</form>
<?php
}
else
{
$connexion=mysql_connect("localhost", "root", "")
or die("Impossible de se connecter : " . mysql_error());
mysql_select_db("base");
if($connexion)
{
$req="INSERT INTO client (nom, prenom, adresse, cp, ville, mail, tel) VALUES('".$_POST['nom']."','".$_POST['prenom']."','".$_POST['adresse']."','".$_POST['cp']."','".$_POST['ville']."','".$_POST['mail']."','".$_POST['tel']."')";
mysql_query($req);
if ($req)
{
echo "<h1>Ajout effectué avec succès<h1>";
echo "<a href='Client.php'>[Retour à l'affichage des Clients]</a>";
}
}
mysql_close($connexion);
}
?>
</body>
</html>
Voilà le code ^^
Oui, y a moyen, j'm'y retrouve plus trop avec toutes ses quotes! ^^'
<html>
<head><title>Ajouter un nouveau client</title></head>
<meta charset="UTF-8"/>
<body>
<?php
if($_GET)
{
?>
<form name="frm" action="ajoutClient.php" method="POST">
Num: <input type="text" name="num" size="5" value="<?php echo $_GET["num"]; ?>" readonly /><br />
<br>Nom: <input type="text" name="nom" size="20" value="<?php echo $_GET["name"]; ?>" /><br />
<br>Prénom: <input type="text" name="prenom" size="20" value="<?php echo $_GET["prenom"]; ?>"/><br />
<br>Adresse: <input type="text" name="adresse" size="35" value="<?php echo $_GET["adresse"]; ?>" /><br />
<br>Code Postale: <input type="text" name="cp" size="5" value="<?php echo $_GET["cp"]; ?>"/><br />
<br>Ville: <input type="text" name="ville" size="20" value="<?php echo $_GET["city"]; ?>"/><br />
<br>Adresse mail: <input type="text" name="mail" size="30" value="<?php echo $_GET["mail"]; ?>"/><br />
<br>Téléphone <input type="text" name="tel" size="20" value="<?php echo $_GET["tel"]; ?>"/><br />
<br> <input type="submit" name="Bt_ajouter" value="Ajouter"/>
<input type="reset" name="Bt_Annuler" value="Annuler"/><br />
</form>
<?php
}
else
{
$connexion=mysql_connect("localhost", "root", "")
or die("Impossible de se connecter : " . mysql_error());
mysql_select_db("base");
if($connexion)
{
$req="INSERT INTO client (nom, prenom, adresse, cp, ville, mail, tel) VALUES('".$_POST['nom']."','".$_POST['prenom']."','".$_POST['adresse']."','".$_POST['cp']."','".$_POST['ville']."','".$_POST['mail']."','".$_POST['tel']."')";
mysql_query($req);
if ($req)
{
echo "<h1>Ajout effectué avec succès<h1>";
echo "<a href='Client.php'>[Retour à l'affichage des Clients]</a>";
}
}
mysql_close($connexion);
}
?>
</body>
</html>
Voilà le code ^^
Oui, y a moyen, j'm'y retrouve plus trop avec toutes ses quotes! ^^'
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
35
Modifié par Mickael86480 le 14/05/2013 à 17:30
Modifié par Mickael86480 le 14/05/2013 à 17:30
A en croire ta requete, tous les champs de ta table s'attendent à recevoir des chaine de caractère du style 'abcd' est-ce correcte à ce niveau là?
rajoute des '' à client (alt+7 puis espace de ton clavier)
rajoute des '' à client (alt+7 puis espace de ton clavier)
Oui, c'est tous des varchar sauf le telephone et le code postale qui sont en char
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
35
Modifié par Mickael86480 le 14/05/2013 à 17:33
Modifié par Mickael86480 le 14/05/2013 à 17:33
essai : $toto=$_POST['toto'];
$req="INSERT INTO 'client' (toto) VALUES('".$toto."')";
$req="INSERT INTO 'client' (toto) VALUES('".$toto."')";
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'était bien un problème de quotes!
J'ai inversé toutes les quotes avec les doubles quotes et vice-versa, désormais ça marche.
Merci de votre aide :)
J'ai inversé toutes les quotes avec les doubles quotes et vice-versa, désormais ça marche.
Merci de votre aide :)
jeremy.s
Messages postés
1226
Date d'inscription
lundi 28 mars 2011
Statut
Membre
Dernière intervention
2 septembre 2013
79
Modifié par jeremy.s le 14/05/2013 à 17:36
Modifié par jeremy.s le 14/05/2013 à 17:36
Fais voir un print_r($_POST) pour voir si ya bien quelque chose en post
Ensuite met plutot mysql_query($req) or die("Erreur lors de la requete");
pour voir si c'est la requete qui n'a pas marché.
Et pour finir c'est mieux d'utiliser if(isset($_GET)) plutot que if($_GET)
Et ton if ($req) ne sert pas à grand chose, car $req est un string et non le résultat de ta requete. Pour faire cela il faut mettre le mysql_query($req) dans le if.
Dernier conseil : Dirige toi vers l'objet PDO, car mysql_connect n'est plus d'actualité :)
EDIT : Le temps de faire la réponse et c'est résolu ! Donc tant mieux ! Mais prend quand même en compte mes petits conseils :)
Jérémy
Ensuite met plutot mysql_query($req) or die("Erreur lors de la requete");
pour voir si c'est la requete qui n'a pas marché.
Et pour finir c'est mieux d'utiliser if(isset($_GET)) plutot que if($_GET)
Et ton if ($req) ne sert pas à grand chose, car $req est un string et non le résultat de ta requete. Pour faire cela il faut mettre le mysql_query($req) dans le if.
Dernier conseil : Dirige toi vers l'objet PDO, car mysql_connect n'est plus d'actualité :)
EDIT : Le temps de faire la réponse et c'est résolu ! Donc tant mieux ! Mais prend quand même en compte mes petits conseils :)
Jérémy