Probléme d'insertion des données php [Résolu/Fermé]

Signaler
-
Messages postés
62
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
26 mars 2020
-
Comment je peux vérifier que les données insérées existe dans la base de phpAdmine ???
j'ai le code suivante:
<?php


if(isset($_POST['inserer']))
{
$code_client=$_POST["code_client"];
$nom=$_POST["nom"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$code_postale =$_POST["cp"];
$ville =$_POST["ville"];
$email=$_POST["email"];
$tel =$_POST["tel"];
$siteweb =$_POST["siteweb"];
}
else
{
$res="INSERT INTO client(code_client, nom, prenom, adresse, cp, ville, tel,email, siteweb) VALUES ('code_client',
'nom','prenom','adresse','code_postale','ville','tel','email', 'siteweb')";
$requete = mysql_query($res, $cnx) or die(mysql_error());
echo "bien";
}

if($requete)
{
echo("L'insertion a été correctement effectuée") ;
}
else
{
echo("L'insertion à échouée") ;
}


?>
mais il ne m'affiche pas si les données sont insérées ou non

11 réponses

Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Affiche t-il "bien" au moins ?

Si non, c'est qu'il doit rentrer dans le die...
oui il affiche bien mais comment je peux vérifier que les données sont insérées dans le tableau de la base de donnée.Par ce que lorsque je clique sur le tableau client dans Adminephp les données insérées ne s'affiche pas.
Et comment je peux vider les case de formulaire à chaque insertion
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Et bien en cliquant sur "client" tu vérifies si elles se sont bien insérées.

Vu que les données ne sont pas présentes, c'est qu'il y a une erreur quelque part ;)
pour le moment il m'affiche le message suivante "Duplicata du champ '0' pour la clef 'PRIMARY'" je ne sais pas pourquoi???
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Tu essayes d'insérer deux fois la même clef primaire ! (ce qui bien évidemment est interdit, c'est le principe d'une clef primaire d'être unique...)
maintenant j'ai réglé le problème merci mais
je pense que le bouton insérer ne marche pas car les données ne sont pas enregistré
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
J'ai compris le problème...

Tu fais un if... else.

Il fait soit le début, soit la fin... pas les deux ;)
lorsque j'ai supprimé else {
il m'affiche le message suivante "l'insertion est échoué "
je ne sais pas pourquoi ???:(((
Messages postés
7716
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 030
met
 if(isset($requete))
à la place de
if($requete)
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Non, c'est mieux de laisser comme tel.

mysql_query retourne true en cas de succès, false en cas d'erreur. Le ($requête) tout seul est plus approprié ;)
oui j'ai changé mais il reste toujours la connexion échoué
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Il y a aussi un autre problème ^^

VALUES ('code_client',
'nom','prenom','adresse','code_postale','ville','tel','email', 'siteweb')";

Tou ceci doivent être des variables php !

$nom, $prenom... Il faut alors concaténer avec le '.' (j'espère que tu connais...)
j'ai modifié mon code comme cà
if(isset($_POST["inserer"]))
{
$code_client=$_POST["code_client"];
$nom=$_POST["nom"];
$prenom =$_POST["prenom"];
$adresse =$_POST["adresse"];
$code_postale =$_POST["cp"];
$ville =$_POST["ville"];
$email=$_POST["email"];
$tel =$_POST["tel"];
$siteweb =$_POST["siteweb"];

$res="INSERT INTO client(code_client, nom, prenom, adresse, cp, ville, tel,email, siteweb) VALUES ('".$code_client."',
'".$nom."','".$prenom."','".$adresse."','".$code_postale."','".$ville."','".$tel."','".$email."', '".$siteweb."')";
$requete = mysql_query($res, $cnx) or die(mysql_error());
echo "bien";
}

if(isset($requete))
{
echo(" L'insertion a été correctement effectuée") ;
}
else
{
echo(" L'insertion à échouée") ;
}


?>
mais il reste la problème d'échec
je ne sais pas pourquoi???
Messages postés
7716
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 030
si tu descend le } en dessous du "echo("bien")" tout en bas, ça donne quoi ?
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
Déjà tu devrais rentrer dans le premier cas même si la $requete échoue, car elle devrait exister quand même !

Fais un var_dump($requete) juste après la query, juste pour voir ce qu'il en est...
oui ca marche maintenant merci beaucoup pour vous et pour tous mes amis qui m'ont répondue à mes questions :)))))))))))))))))
Messages postés
1562
Date d'inscription
vendredi 28 août 2009
Statut
Membre
Dernière intervention
8 avril 2015
190
De rien ;) Remet le ($requete) seul, sans le isset, c'est un conseil, sinon tu ne rentreras jamais dans le else, même si ça va pas.

ET n'oublie pas de mettre ce sujet en résolu ;)
Messages postés
62
Date d'inscription
lundi 29 septembre 2008
Statut
Membre
Dernière intervention
26 mars 2020

s'il vous plai,j'ai un probleme,j'ai envie de gérrer des documents dans une base de données avec du code php,et je ne sais pas trop quel script taper,je suis nouveau dans le php.je parvient deja a me connecter a la base de données,mais je suis bloquer pour la suite.il faut:
-insérer
-afficher
-supprimer
-et modifier
les documents
s'il vous plai,puis-je avoir des script?merci a vous