Utilisez mysqli_fetch_row()
. Essayez le code suivant?:
$query = "SELECT ssfullname, ssemail FROM userss WHERE user_id = ".$user_id; $result = mysqli_query($conn, $query); $row = mysqli_fetch_row($result); $ssfullname = $row['ssfullname']; $ssemail = $row['ssemail'];
Pas besoin d'utiliser une boucle lorsqu'un seul résultat est nécessaire. Obtenez la ligne directement.
Si vous avez besoin d'obtenir la ligne entière de données sous forme de tableau associatif?:
$row = $result->fetch_assoc();
Si vous n'avez besoin que d'une seule valeur, à partir de PHP 8.2?:
$value = $result->fetch_column();
Ou pour les anciennes versions :
$value = $result->fetch_row()[0] ?? false;
Voici des exemples complets de différents cas d'utilisation
Lorsque des variables doivent être utilisées dans des requêtes, des instructions prétraitées doivent être utilisées. Par exemple, disons que nous avons une variable $id
?:
PHP >= 8,2
// 獲取單行 $sql = "SELECT fullname, email FROM users WHERE id=?"; $row = $conn->execute_query($query, [$id])->fetch_assoc(); // 如果只需要一個值 $sql = "SELECT count(*) FROM users WHERE id=?"; $count = $conn->execute_query($query, [$id])->fetch_column();
Ancienne version de PHP?:
// 獲取單行 $query = "SELECT fullname, email FROM users WHERE id=?"; $stmt = $conn->prepare($query); $stmt->bind_param("s", $id); $stmt->execute(); $result = $stmt->get_result(); $row = $result->fetch_assoc(); // 如果只需要一個值 $query = "SELECT count(*) FROM userss WHERE id=?"; $stmt = $conn->prepare($query); $stmt->bind_param("s", $id); $stmt->execute(); $result = $stmt->get_result(); $count = $result->fetch_row()[0] ?? false;
Une explication détaillée du processus ci-dessus peut être trouvée dans mon article. La raison pour laquelle ce processus doit être suivi est expliquée dans cette fameuse Question.
Dans votre cas, aucune variable n'est utilisée dans la requête, vous pouvez utiliser la query()
méthode?:
$query = "SELECT fullname, email FROM users ORDER BY ssid"; $result = $conn->query($query); // 如果需要一個數(shù)組 $row = $result->fetch_assoc(); // 或者如果只需要一個值 $value = $result->fetch_row()[0] ?? false;