Hallo zusammen, ich bin ein Neuling hier. In der Praxis habe ich einen Satz gefunden, der dem folgenden ähnelt:
<code>SELECT * FROM seller_item_classify where sid=$sid order by cweight asc ; </code>
Wobei $sid der vom Frontend übergebene Wert ist, seller_item_classify die Angabe und sid ein Feldname in der Tabelle ist;
Wenn der von $sid übergebene Wert zufällig „sid“ ist, wird die SQL-Anweisung verwendet wird ungültig sein, was zu einer vollständigen Tabellenabfrage führt
Was halten Sie von diesem Problem?
Antwortinhalt:
<code>SELECT * FROM seller_item_classify where sid=$sid order by cweight asc ; </code>
Wenn der von $sid übergebene Wert zufällig „sid“ ist, wird die SQL-Anweisung verwendet wird ungültig sein, was zu einer vollständigen Tabellenabfrage führt
Da der Wert von $sid in einer Produktionsumgebung ein numerischer Wert oder ein Zeichen sein kann, sollte ich den Front-End-Eingabewert in PHP filtern?
Was halten Sie von diesem Problem?
<code>"SELECT * FROM seller_item_classify where sid='$sid' order by cweight asc ;"</code>
Fügen Sie '' zu SQL-Bedingungswerten hinzu
<code>sid = '$sid'</code>
Funktioniert es?
as 别名
'SELECT * FROM seller_item_classify where sid='.$sid.' order by cweight asc ;'
PDO-Vorverarbeitung verwenden