2013-06-01 1 views
1

Je suis un peu verte avec PHP et j'ai un petit problème avec lequel j'espère avoir de l'aide. J'utilise la requête suivante dans un fichier et je veux ajouter un ordre de tri à la fin. Je ne suis pas sûr comment échapper la dernière partie de la requête pour obtenir la requête pour accepter l'ordre de tri.Problème de chaîne de requête PHP

$queryPro = "select * from pages WHERE MenuType='S' AND Activate='Y' AND SiteID='4000' AND SubMenuOf=".$rowCat["PageNumber"]; 

Ce que je voudrais utiliser est

$queryPro = "select * from pages WHERE MenuType='S' AND Activate='Y' AND SiteID='4000' AND SubMenuOf=".$rowCat["PageNumber"] Order By SortOrder ASC; 

Mais cela produit une erreur.

Toute aide sera grandement appréciée.

Merci JW

Répondre

2

vous n'avez pas inclus ORDER BY... dans la chaîne provoquant une erreur de syntaxe,

$queryPro = "select...AND SubMenuOf=".$rowCat["PageNumber"] . " Order By SortOrder ASC"; 

En tant que sidenote, la requête est vulnérable SQL Injection si la valeur (s) de les variables viennent de l'extérieur. S'il vous plaît jeter un oeil à l'article ci-dessous pour apprendre comment éviter cela. En utilisant PreparedStatements vous pouvez vous débarrasser de l'utilisation de guillemets simples autour des valeurs.

+0

Nous vous remercions pour l'aide et le lien. Je vais essayer de mettre en œuvre ces changements. – user2443813