Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Mysql SELECT-Abfrage hat funktioniert, funktioniert jetzt nicht 2 Minuten später (ohne Änderungen)

Nach dem Laden des Ergebnisses müssen Sie überprüfen, ob es erfolgreich war. Denn es besteht immer die Möglichkeit, dass der Server weg ist oder keine freien Verbindungen mehr verfügbar sind.

Wenn dies der Fall ist, dann mysqli_query gibt false zurück , das scheint das von Ihnen beobachtete Verhalten zu sein.

$username = mysqli_real_escape_string($username);
$id4 = mysqli_real_escape_string($id4);

$stuff_get = mysqli_query($con,
    "SELECT users.id, users.email, users.hash, users.username
     FROM users
     WHERE 
         users.username = '$username' 
         AND users.id=$id4");

if ($stuff_get)
{
    $gotstuff = mysqli_fetch_array($stuff_get, MYSQL_ASSOC);
}
else
{
    throw new \Exception('Could not retrieve result.');
}

(HINWEIS:Ich maskiere Ihre Parameter, bevor Sie die Abfrage ausführen … nur um sicherzugehen, dass sie nicht vergessen wird, wenn jemand den Code kopiert/einfügt. Übrigens, Sie könnten in Betracht ziehen, zu vorbereiteten Anweisungen zu wechseln … viel einfacher zu verwenden und viel sicherer.)