Cette requete mysql fonctionne t elle ?

Fermé
idiot_bete - 27 janv. 2008 à 17:14
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 - 27 janv. 2008 à 19:01
Bonjour,
la requete mysql suivante est elle valide ??
Si non que dois je ecrire pour que cela marche ?
mysql_query("SELECT * FROM villes WHERE floor(code_postal/1000)='".$code_dep."'");	

4 réponses

oui tu la essayer

voici le mien il fonction normalement s il probleme c est sans doute que tu dois revoir les parrenthese si tu peux noter autrement
$requete = mysql_query("select nom,prenom,login from membre where login = '".$_POST["vlogin"]."'
and motpass = '".$_POST["vmotp"]."' ");
0
oui merci j'ai pu voir que cela marche (avant mon code ne marchait pas)

par contre j'ai une question sur un bout de code que j'ai copier (qui marche ) mais ddont je ne comprends pas la signification

c'est pour une liste deroulante, dans laquelle je renseigne le departement et ca m'affiche les villes cde ce departement:
<option value='<?php echo $i;?>' <?php echo((isset(code_dep) && code_dep == $i)?" selected=\"selected\"":null); ?> >
</option>
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 226
27 janv. 2008 à 18:56
<?php echo((isset(code_dep) && code_dep == $i)?" selected=\"selected\"":null); ?> >


Salut, c'est une syntaxe spéciale pour écrire :

if(isset(code_dep) && code_dep == $i) {
  echo " selected=\"selected\"";
}else {
  echo null;
}

Le ? pose la condition à gauche de ce symbole. La valeur qui suit le ? est la réponse si la condition est vraie tandis que ce qui suit les : répond à la condition fausse.
0
Posotaz Messages postés 489 Date d'inscription samedi 23 juin 2007 Statut Membre Dernière intervention 19 juin 2011 226
27 janv. 2008 à 19:01
Par contre, relisant ton premier message y'a un truc qui me dérrange dans ta requête.

Un floor est bien une fonction mathématique... dans ce cas pourquoi entourer $code_dep de simples guillemets afin de le considérer comme un alphanumérique si par définition un numérique s'écrit sans guillemets. Ca peut fonctionner sous MySql mais là tu convertis un nombre en texte pour qu'ensuite le moteur SQL transforme à nouveau le texte en nombre... il y perd en temps de traitement. ;-)
0