2016-03-30 2 views
1

Ich verwende PHP und MySQL, um die Ausgabe aus der MySQL-Datenbank abzurufen und zu drucken; jedoch, wenn ich durch den folgenden Code ausführen bekomme ich zwei Ergebnisse aus dem Echo statt eines:Wie bekomme ich fetchall, um nur eine Eingabe pro Zeile zu erhalten und mehrere Ergebnisse zu erhalten?

<?php require('includes/config.php'); 
$stmt = $db->prepare("select username From members where resetToken like 'yes';"); 
$stmt->execute(); 
$result = $stmt->fetchAll(); 
foreach ($result[0] as $value) { 
    echo "$value <br>"; 
} 
?> 

Auch wenn ich die SQL über phpMyAdmin laufen gibt es mehrere Benutzer, aber wenn ich es durch die PHP-Seite laufen sie nur gibt eins zurück. Auch die config.php enthält alle Datenbankinformationen, so dass das nicht das Problem ist.

Antwort

2

Es gibt nur ein Ergebnis, weil Sie nur das erste Ergebnis (bei Index 0) überprüfen. Zuerst über die Ergebnisse und dann über ihre Werte iterieren:

<?php 
require('includes/config.php'); 

$stmt = $db->prepare("select username From members where resetToken like 'yes';"); 
$stmt->execute(); 
$results = $stmt->fetchAll(); 
foreach ($results as $values) 
    foreach($values as $value) { 
     echo "$value <br>"; 
    } 
} 
?> 
Verwandte Themen