Heim >Datenbank >MySQL-Tutorial >Warum gibt mein PHP-Code nur eine Zeile aus einer MySQL-Abfrage mit einer LIMIT-Klausel zurück?

Warum gibt mein PHP-Code nur eine Zeile aus einer MySQL-Abfrage mit einer LIMIT-Klausel zurück?

Linda Hamilton
Linda HamiltonOriginal
2024-12-06 11:37:121058Durchsuche

Why Does My PHP Code Only Return One Row from a MySQL Query with a LIMIT Clause?

Einzelzeilenrückgaben in MySQL mit PHP auflösen

Beim Versuch, mehrere Zeilen aus einer MySQL-Datenbank mit mysql_query() und mysql_fetch_assoc von PHP abzurufen ()-Funktionen können Benutzer auf ein Problem stoßen, bei dem nur eine einzelne Zeile vorhanden ist zurückgegeben.

Problem:


Bedenken Sie den folgenden PHP-Code:

$query = mysql_query("SELECT `title`, `url_title` FROM `fastsearch` WHERE `tags` LIKE '%$q%' LIMIT 5");
$query2 = mysql_fetch_assoc($query);
print_r($query2);

Dieser Code ruft Daten aus der Fastsearch-Tabelle basierend auf einer Tag-Suche ab. Anstatt jedoch alle fünf durch die LIMIT-Klausel angegebenen Zeilen zurückzugeben, wird nur die erste Zeile als assoziatives Array zurückgegeben.

Lösung:

Um dieses Problem zu beheben, Der Code muss wie folgt geändert werden:

$query = mysql_query("SELECT `title`,
                             `url_title`
                        FROM `fastsearch`
                       WHERE `tags`
                            LIKE '%$q%'
                       LIMIT 5");

while ($row = mysql_fetch_assoc($query)) {
    print_r($row);
}
  • Korrigiert Schreibweise: Der Variablenname $query wurde korrekt geschrieben.
  • Zeileniteration: mysql_fetch_assoc() gibt jeweils eine einzelne Zeile zurück. Durch die Verwendung in einer while()-Schleife weist jede Iteration die aktuelle Zeile der Variablen $row zu. Dies ermöglicht das Abrufen und Anzeigen aller Zeilen innerhalb der LIMIT-Einschränkung.

Das obige ist der detaillierte Inhalt vonWarum gibt mein PHP-Code nur eine Zeile aus einer MySQL-Abfrage mit einer LIMIT-Klausel zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn