Ich versuche foreach zu verwenden, um jede Zeile in einer Spalte zu echo. Aber ich immer:Alle Zeilen in Spalte mit foreach anzeigen
Warning: Invalid argument für foreach geliefert()
Hier mein Code:
<?php
$user = user;
$pass = pass;
$dbh = new PDO('mysql:host=localhost;dbname=onlyaskf_registered', $user, $pass);
$stmt = $dbh->prepare("SELECT COUNT(*), sum(price),part_number,location,price FROM products WHERE code = :usercode");
$stmt->bindParam(':usercode', $_SESSION['MM_Username']);
?>
<?php
if ($stmt->execute()) {
foreach($stmt->fetchColumn(2) as $row) {
echo $row;
}
}
?>
Mit diesem Code habe ich die erste Zeile in der Spalte bekommen:
<?php
if ($stmt->execute()) {
$row = $stmt->fetchColumn(2);
echo $row;
}
?>
Spalte 2 ist meine part_number Spalte, wenn ich meinen php wie oben formatiere es gibt mir die erste Instanz dieser Spalte Zeile. Wie bekomme ich es, um jede Zeile in der Spalte mit foreach anzuzeigen? Ist das überhaupt möglich oder gibt es eine bessere Methode, die Zeilen einer ganzen Spalte zu wiederholen?
UPDATE:
ich meinen Code auf diese geändert, aber es ist mir nur die erste Zeile des Spaltenwert zu geben, anstatt jede Zeile:
<?php if ($stmt->execute()) {
while($val = $stmt->fetch()) {
echo $val['part_number'];
}
} ?>
'print_r ($ row)' u wird die Idee bekommen, wie es – devpro
angezeigt wird @devpro I echo $ Zeile geändert; to print_r ($ row) das gibt mir immernoch das selbe Ergebnis und bekomme die Warnung: Ungültiges Argument für foreach() – holodout
versuche das selbe mit @ marc-b Beispiel – devpro