Probleme de requete d'insertion php

Résolu/Fermé
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011 - 16 juil. 2009 à 14:46
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 - 16 juil. 2009 à 16:58
Bonjour,
j'ai ce code en php
<?php
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$fonction=$_POST['fonction'];
$mail=$_POST['adresse_email'];
$tel=$_POST['tel'];
$pw=$_POST['pw'];
$c=mysql_pconnect("localhost","root","");
$db=mysql_select_db("info leader");
$rsql="select max(num) from client";
$res=mysql_query($rsql);
$cod=mysql_fetch_object($res);
$cod++;
settype($nom,"string");
settype($prenom,"string");
//settype($fonction,"string");
settype($mail,"string");
settype($tel,"string");
settype($pw,"string");
$rsql="INSERT INTO client (num, nom, prenom, mail, tel, password, fonction) VALUES ($cod, $nom, $prenom, s$mail, $tel, $pw, $fonction)";
$res=mysql_query($rsql);

?>

il m'indique qu'il y a une erreur dans la requete d'insertion
A voir également:

20 réponses

jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:29
Ha je viens de voir ca :

$res=mysql_query($rsql);
$cod=mysql_fetch_object($res);
$cod++;


remplace plutot par

$res=mysql_query($rsql);
$ligne=mysql_fetch_array($res);
$cod=$ligne[0];
$cod++;
1
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:38
wé c cool merci amigo
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:40
mais il me reste le champ pw c toujours vide
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:42
$rsql = "insert into client values('$cod','$nom','$prenom','$mail','$tel','$pw','$fonction')";
1
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:45
wé c vrai je l'ai nommé $pw
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:57
j'ai une autre chose si sa te dérange pas
je veu afficher le contenu de mon listbox pas le numero de l'index
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:58
Alors faut que tu modifies les "value" des options de ton select dans ton formulaire, parce que cest ca qui est envoyé, et pas le texte qui est compris entre les balises "<option>" et "</option>"
1
Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
16 juil. 2009 à 14:50
Sur tes POST mets des addslashes déjà ca peut aider.
Puis sinon bin fais un echo de ta requete et exécute la dans phpMyAdmin, t'aura un message + explicite.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
xXPika74Xx Messages postés 115 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 25 mai 2011 13
16 juil. 2009 à 14:51
$rsql="INSERT INTO client (num, nom, prenom, mail, tel, password, fonction) VALUES ($cod, $nom, $prenom, s$mail, $tel, $pw, $fonction)";

il y a pas un petit s en trop ici juste avant le $mail?? ;)
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 14:51
ben plutot remplace ta ligne de mysql_query par

$res=mysql_query($rsql) or die(mysql_error());
0
drantd Messages postés 99 Date d'inscription vendredi 24 octobre 2008 Statut Membre Dernière intervention 20 février 2012 20
16 juil. 2009 à 14:51
Bonjour,

Essai avec des guillemets autour des variables dans VALUE( ), enlève le S devant $Mail
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 14:56
"Essai avec des guillemets autour des variables dans VALUE( ), enlève le S devant $Mail"

Pas des guillemets, mais des apostrophes
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:01
voici l'erreur qu'il m'affiche
Catchable fatal error: Object of class stdClass could not be converted to string et il m'indique au requete d'insertion c'est vrai j'ai ajouter un s devant $mail mais le même erreur est afficher
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:10
c vrmt inormal j'ai utiliser wamp au début il m'a afficher l'erreur que j'ai indiquer au début mais mnt j'ai changer easyphp et il m'a afficher sa

Notice: Undefined index: nom in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 10

Notice: Undefined index: prenom in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 11

Notice: Undefined index: fonction in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 12

Notice: Undefined index: adresse_email in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 13

Notice: Undefined index: tel in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 14

Notice: Undefined index: pw in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 15

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in C:\Program Files\EasyPHP 2.0b1\www\info leader\verif.php on line 20
Erreur de syntaxe pr�s de ''info leader'.'client' (num, nom, prenom, mail, tel, password, f' � la ligne 1
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:11
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:41
aidez moi svp ma requete d'insertion est fausse
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 15:43
Ben oui si tes POST n'existent pas ca parait logique que ca marche pas ....
0
xXPika74Xx Messages postés 115 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 25 mai 2011 13
16 juil. 2009 à 15:46
A tu essayer de mettre des echo pour voir si tes variable était iniatiliser correctement ou si elle renvoyait une valeur vide??
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:57
il m'affiche rien avec echo
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011 > houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 15:58
alors le prob est dans les post
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 15:59
Est ce qu'on pourrait avoir la page qui appelle celle-ci ?
si les POST n'existent pas ca doit venir de la page précédente
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:04
voila le html:
<html>
<head>
<title> inscription </title>

<link rel=stylesheet href="css/nivsecmp.css" type="text/css" media=screen>
<script src="js/js.js" type="text/javascript"></script>

<script>
function evalPwd(s)
{
var cmpx = 0;

if (s.length >= 6)
{
cmpx++;

if (s.search("[A-Z]") != -1)
{
cmpx++;
}

if (s.search("[0-9]") != -1)
{
cmpx++;
}

if (s.length >= 8 || s.search("[\x20-\x2F\x3A-\x40\x5B-\x60\x7B-\x7E]") != -1)
{
cmpx++;
}
}

if (cmpx == 0)
{
document.getElementById("weak").className = "nrm";
document.getElementById("medium").className = "nrm";
document.getElementById("strong").className = "nrm";
}
else if (cmpx == 1)
{
document.getElementById("weak").className = "red";
document.getElementById("medium").className = "nrm";
document.getElementById("strong").className = "nrm";
}
else if (cmpx == 2)
{
document.getElementById("weak").className = "yellow";
document.getElementById("medium").className = "yellow";
document.getElementById("strong").className = "nrm";
}
else
{
document.getElementById("weak").className = "green";
document.getElementById("medium").className = "green";
document.getElementById("strong").className = "green";
}
}
//fonction pour vérifier si le numero de teléphone possède des caractère alphabétique
function numerique(x)
{
if(isNaN(x)==true)
{
alert('Numero de Tel doit etre numérique')

}
}

//fonction d'obliger l'utilisateur à cocher une case de formulaire avant de continuer son inscription


function ChangeStatut(inscri)
{
if(window.document.inscri.terme.checked == true)

window.document.inscri.submit.disabled = false

else

window.document.inscri.submit.disabled = true

}

//vérification mail
function VerifForm(formulaire)
{
adresse = formulaire.adresse_email.value;
var place = adresse.indexOf("@",1);
var point = adresse.indexOf(".",place+1);
if ((place > -1)&&(adresse.length >2)&&(point > 1))
{
formulaire.submit();
return(true);
}
else
{
alert('Entrez une adresse e-mail valide!!');
return(false);
}
}

</script>
</head>

<body background="fond inscription.jpg" leftmargin="50" >

<div align="center">
<blockquote>  </blockquote>
</div>
<blockquote><p align="center"><br>
<br>
</p>
</blockquote>
<form name="inscri" action="verif.php" methed="get" onSubmit="return(VerifForm(this))">

<p align="center"><b><i>Nom * : </i></b>
<input name="nom" size=10>
<br>
<br>
<b><b><i>Prénom * : </i></b>
<input name="prenom" size=10>
<br>
<br>
<b><i>Fonction :</i></b>
<select name="fonction">
<option value=0> </option>
<option value=1>Etudiant </option>
<option value=2>Employé </option>
</select>
</b></p>
<p align="center"><b>e-mail:
<label>
<input type="text" name="adresse_email" id="mail" >
</label>
<label></label>
<br>
<br>
<b><i>Téléphone : </i></b>
<label>
<input type="text" name="tel" id="tel" onBlur="numerique(this.value)">
</label>
<br>
<br>
<i>Mot de passe * :</i></b>
<input name="pw" type=password onKeyUp="evalPwd(pw.value);" size=10 maxlength=8>
</p>
<p align="left"> Niveau de sécurité de votre mot de passe : </p>
<div id="sm">

<div align="center">
<ul>
<li id="weak" class="nrm">Faible</li>
<li id="medium" class="nrm">Moyen</li>
<li id="strong" class="nrm">Fort</li>
</ul>
</div>
</div>
<div align="center"><br>
<br>
<b><i>Lire cela !!!</i></b>
<textarea name=motivation cols=100 rows="6" row=100 >
La validation de ce formulaire emporte consentement aux Conditions d’Utilisation du Service ainsi qu’à notre centre!
Données personnelles, qui précise les modalités du droit d’accès et de rectification dont vous bénéficiez.
La validation de ce formulaire emporte également consentement à la collecte, au stockage et à l’utilisation des informations figurant sur ce formulaire.
</textarea>
<br>
<br>
<input type="checkbox" name="terme" value="confirm" onClick="ChangeStatut(inscri)" >
<i>J’ai lu et approuvé les Conditions d’utilisation de ce Compte</i>

<br>
<br>
<input type=submit name="submit" value=Envoyer disabled />
<input type=reset name="reset" value=Effacer>
<br>
</div>
</form>
</body>
</html>
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011 > houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:04
et voici le php:

<?php
$nom=$_GET['nom'];
$prenom=$_GET['prenom'];
$fonction=$_GET['fonction'];
$mail=$_GET['adresse_email'];
$tel=$_GET['tel'];
$pw=$_GET['pw'];
//echo $nom. "<br>";
//echo $prenom. "<br>";
//echo $fonction. "<br>";
//echo $mail. "<br>";
//echo $tem. "<br>";
//echo $pw. "<br>";
$c=mysql_pconnect("localhost","root","");
$db=mysql_select_db("info leader");
$rsql="select max(num) from client";
$res=mysql_query($rsql);
$cod=mysql_fetch_object($res);
$cod++;
settype($nom,"string");
settype($prenom,"string");
settype($fonction,"string");
settype($mail,"string");
settype($tel,"string");
settype($pw,"string");
$rsql = "insert into client values($cod,$nom,$prenom,$mail,$tel,$password,$fonction)";
$res=mysql_query($rsql) or die(mysql_error());
if($res)
echo "bravo";
else
echo "pas encore";
?>
0
xXPika74Xx Messages postés 115 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 25 mai 2011 13
16 juil. 2009 à 16:09
<form name="inscri" action="verif.php" methed="get" onSubmit="return(VerifForm(this))">

Ici ce n'est pas methed mais method

essaye pour voir ;)

0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:19
le même probleme REQUETE D'INSERTION
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:09
method="post" pas get !

ha non dsl javais pas vu que tavais modifier ta page de traitement aussi XD
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:20
"Le même probleme REQUETE D'INSERTION"

Heu ca taffiche une erreur ?
laquelle ?
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:22
Catchable fatal error: Object of class stdClass could not be converted to string
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
16 juil. 2009 à 16:23
Heu tes erreurs viennent de tes settype

ils ne servent à rien, par contre il faut que tu mettes des ' autour des tes values lors de l'insert :

$rsql = "insert into client values('$cod','$nom','$prenom','$mail','$tel','$password','$fonction')";
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:26
même probleme
0
xXPika74Xx Messages postés 115 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 25 mai 2011 13
16 juil. 2009 à 16:31
Tout les donnee a ajouter sont elle de type texte??? sa pourrait être une des erreurs

essaye ta formule comme ceci:

$rsql = "insert into client values('" . $cod . "','" . $nom . "','" . $prenom . "','" . $mail . "','" . $tel . "','" . $password . "','" . $fonction . "')";
0
houba80 Messages postés 49 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 15 juillet 2011
16 juil. 2009 à 16:36
oui ils sont tout de type texte
j'ai essayer ta requete mais sa va pas marcher
0
xXPika74Xx Messages postés 115 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 25 mai 2011 13
16 juil. 2009 à 16:37
Pourquoi tjrs le même message d'erreur??

fait un echo de ta requète et copie nous ce qu'il en ressort svp sa sera plus simple pour voir le problème
0