Ich bin neu in PHP PDO und zu versuchen, verwenden benannte Platzhalter am Ort der ORDER BY ASC laufen. Irgendwann in einfacher Abfrage Seite laufen diese sehr erfolgreich nicht in der Lage, aber in der folgenden Abfrage auszuführen:kann nicht genannt Platzhalter für Bestellung von ASC in PHP gU
PHP-Code ist:
$price_sort = "ASC";
$keyword = "samsung glaxy";
$limit = 0;
$query = $db->prepare("SELECT *, MATCH(title) against (:keyword) as 'relevence'
FROM view_store_items_grid
WHERE MATCH(title) against(:keyword)
ORDER BY relevence DESC, price :order
LIMIT :limit,25");
$query->bindValue(":keyword",$keyword);
$query->bindValue(":order",$price_sort);
$query->bindValue(":limit", $limit, PDO::PARAM_INT);
$query->execute();
Wenn ich Platzhalter entfernen :order
mit ASC
diesem Laufe und gibt Ergebnis, aber wenn ich benutze diesen Platzhalter, ich bekomme ein leeres Ergebnis.
Für Abrufen von Daten oder abgerufenen Ergebnis zu zeigen, ich bin mit
while ($row = $query->fetch(PDO::FETCH_ASSOC)) :
extract($row);
echo "$name";
endwhile;
Was ich falsch mache und wie ich viele namens Platzhalter in Abfrage an verschiedenen Orten nutzen können?
Sie keine benannten Parameter-Markierung mit dem gleichen Namen mehr als einmal in einer vorbereiteten Erklärung – Saty
Sie meinen, verwenden kann ich zwei verschiedene Platzhalter am Ort des 'verwenden soll: Stichwort "? –
Versuchen Sie es mit anderen Platzhalter von 'Schlüsselwort' – Saty