RESOLU - php "01098" et "1098" identique ?

willpower
WRInaute discret
WRInaute discret
 
Messages: 208
Inscription: 15 Mar 2007

RESOLU - php "01098" et "1098" identique ?

Message le Ven Juin 25, 2010 15:08

Hello a tous,

Je suis pas un pro du Php, mais j'apprends. J'ai un probleme.
En fait dans un script je verifie si un item existe deja dans une table et s'il existe je ne fais que le mettre ajour, sinon je l'ajoute.

Tout allait bien jusqu'a dernierement ou je me suis rendu compte qu'en fait certain item n'etait pas creer.
En fait voici la petite partie de mon script qui ne fonctionne pas (Pourtant ca m'a l'air simple):

Code: Tout sélectionner
$num_style = "01098";
$sqqql="SELECT products_model FROM kvd.products WHERE products_model = " . $num_style;
$answer = mysql_query($sqqql);
if (mysql_num_rows($answer) > 0)
{
echo "$num_style existe <br>";
}else{
echo "$num_style existe pas";
}


Et donc si je fait rouler ca, il me dit que le numero de style 01098 existe (ce qui n'est pas le cas). En fait l'item 1098 existe, mais pas "01098". Comment forcer mon script a faire la difference?

Merci
Si je vais sur phpmyadmin et fait une recherche
Dernière édition par willpower le Ven Juin 25, 2010 17:29, édité 1 fois.


seebz
WRInaute impliqué
WRInaute impliqué
 
Messages: 808
Inscription: 15 Avr 2007

Re: php "01098" et "1098" identique ?

Message le Ven Juin 25, 2010 15:12

dans ton cas, c'est mysql qui à fait la conversion de ta chaine en numérique..

entoure ta chaine de guillemets dans ta requete et ça devrait aller (à condition que ton champ products_model ne soit pas de type numérique)

willpower
WRInaute discret
WRInaute discret
 
Messages: 208
Inscription: 15 Mar 2007

Re: php "01098" et "1098" identique ?

Message le Ven Juin 25, 2010 16:38

Tu veus dire comme ca:

$num_style = "01098";
$sqqql="SELECT products_model FROM kvd.products WHERE products_model = " . "$num_style";
$answer = mysql_query($sqqql);
if (mysql_num_rows($answer) > 0)
{
echo "$num_style existe <br>";
}else{
echo "$num_style existe pas";
}

Si c'est ce que tu suggerrais, ca donne le meme resultat. Merci

Autre suggestion?

jv2759
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 409
Inscription: 21 Nov 2008

Re: php "01098" et "1098" identique ?

Message le Ven Juin 25, 2010 17:16

non plutot :

Code: Tout sélectionner
$sqqql="SELECT products_model FROM kvd.products WHERE products_model = '$num_style' ";
si bien sur products_model et une chaine de caractère, sinon, c'est simplement impossible car 1098=01098=001098=0001098 et ainsi de suite.

willpower
WRInaute discret
WRInaute discret
 
Messages: 208
Inscription: 15 Mar 2007

Re: php "01098" et "1098" identique ?

Message le Ven Juin 25, 2010 17:28

Parfait ca Marche!!! Merci !!!

Edit...et du meme coup ca beaucoup accelerer mon script! :)


seebz
WRInaute impliqué
WRInaute impliqué
 
Messages: 808
Inscription: 15 Avr 2007

Re: RESOLU - php "01098" et "1098" identique ?

Message le Sam Juin 26, 2010 9:12

Si le champ products_model est le champ primaire, tu peux aussi faire une requete du type "REPLACE INTO ...".

Ce type de requete fera selon le cas un INSERT ou un UPDATE "tout seul" ;)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: erestrebian et 0 invités