Requete sql "order by" ne fonctionne pas.

Résolu/Fermé
vermich89 Messages postés 63 Date d'inscription lundi 20 août 2012 Statut Membre Dernière intervention 19 mars 2015 - 8 août 2013 à 10:37
Mehrez.labidi Messages postés 74 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 17 janvier 2015 - 8 août 2013 à 12:12
Bonjour à tous,

depuis un fichier php je construit une requête sql morceau par morceau.
Tout fonctionne mais je cherche à obtenir la liste trier par ordre alphabétique et quand j'ajoute le order by plus rien ne fonctionne. Y a t il un emplacement obligatoire ?

Normalement si je ne me suis pas trompé ma requête est ainsi :

SELECT CP CodePostal, VILLE Ville FROM cp_autocomplete WHERE CP LIKE 60150 AND CODEPAYS = 'FR' LIMIT 0, 150 ORDER BY ville ASC


voici mon code au complet:

//Construction de la requete
$strQuery = "SELECT CP CodePostal, VILLE Ville FROM cp_autocomplete WHERE ";
if (isset($_POST["codePostal"]))
{
    $strQuery .= "CP LIKE :codePostal ";
}
else
{
    $strQuery .= "VILLE LIKE :ville ";
}
$strQuery .= "AND CODEPAYS = 'FR' ";
//Limite
if (isset($_POST["maxRows"]))
{
    $strQuery .= "LIMIT 0, :maxRows";
}
$strQuery .= " ORDER BY ville ASC ";
$query = $db->prepare($strQuery);
if (isset($_POST["codePostal"]))
{
    $value = $_POST["codePostal"]."%";
    $query->bindParam(":codePostal", $value, PDO::PARAM_STR);
}
else
{
    $value = $_POST["ville"]."%";
    $query->bindParam(":ville", $value, PDO::PARAM_STR);
}
//Limite
if (isset($_POST["maxRows"]))
{
    $valueRows = intval($_POST["maxRows"]);
    $query->bindParam(":maxRows", $valueRows, PDO::PARAM_INT);
}

$query->execute();


A voir également:

4 réponses

Mehrez.labidi Messages postés 74 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 17 janvier 2015
8 août 2013 à 10:40
SELECT "nom de colonne"
FROM "nom de table"
[WHERE "condition"]
ORDER BY "nom de colonne" [ASC, DESC];
0
vermich89 Messages postés 63 Date d'inscription lundi 20 août 2012 Statut Membre Dernière intervention 19 mars 2015 13
8 août 2013 à 10:41
Merci pour ta rapidité :)

oui donc normalement mon ORDER BY est bon !?
0
vermich89 Messages postés 63 Date d'inscription lundi 20 août 2012 Statut Membre Dernière intervention 19 mars 2015 13
8 août 2013 à 11:22
Autant pour moi, c'est bon.
0
Mehrez.labidi Messages postés 74 Date d'inscription vendredi 3 mai 2013 Statut Membre Dernière intervention 17 janvier 2015
8 août 2013 à 12:12
je te conseille de lancer le code sous sqlplus ensuite tu tape showerrors pour voir l'erreur c 'est a quel ligne exactement.
A mon avis la requete sql est bon.
Verifie d 'abord si tes tables sont deja crées .
essaie sans le "ASC" parceque c 'est optionnel.
0