2016-04-07 5 views
0

Ich habe eine Tabelle mit Spalten (user_id, user_name, user_email, user_pw) und 2 Reihenphp MySQLi nur Fetch_Row gibt Spaltenname

1 Admin [email protected] Admin

2 user_1 user_1 @ Benutzer. com user_1

ich versuche, die db von PHP nach diesem Beispiel http://php.net/manual/en/mysqli-result.fetch-row.php

aber wenn ich die Ausgabe drucken abzufragen, erhalte ich nur die Spaltennamen anstelle der Werte (und leider auch Linie bre aks erhalten ignoriert)

Anschluss successfulSelect ergab 2 rows.user_id, user_name, user_email user_id, user_name, user_email

ich im Grunde das Beispiel in der Verbindung kopiert. Was mache ich hier falsch?

<?php 

$conn_error = "Could not connect to db"; 

$mysql_host = 'localhost'; 
$mysql_user = 'root'; 
$mysql_password = ''; 
$mysql_db = 'test'; 

$mysqli = new mysqli($mysql_host, $mysql_user, $mysql_password, $mysql_db); 

if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } else { 
    echo "Connection successful"; 
    } 

$query = "SELECT 'user_id', 'user_name', 'user_email' FROM users"; 

if ($result = $mysqli->query($query)) { 

    printf("Select returned %d rows.", mysqli_num_rows($result)); 

    /* fetch object array */ 
    while ($row = $result->fetch_row()) { 
     printf ("%s, %s, %s\n", $row[0], $row[1], $row[2]); 
    } 

    $result->close(); 

} else { 

    echo "Nothing returned on query " .$query; 

} 
$mysqli->close(); 

?> 
+0

Was gibt 'var_dump ($ row)' innerhalb der while-Schleife? – Maximus2012

Antwort

3

Entfernen Sie die Anführungszeichen um die Feldnamen. Wechsel:

SELECT 'user_id', 'user_name', 'user_email' FROM users 

An:

SELECT user_id, user_name, user_email FROM users 

Sie soll wahrscheinlich Zecken verwenden zurück, wie folgt aus:

SELECT `user_id`, `user_name`, `user_email` FROM users 

das auch funktionieren würde, aber sie werden nur benötigt, wenn Sie reservierte Wörter oder Sonderzeichen (wie Leerzeichen) in Feldnamen.

+0

danke viel trincot, das reparierte es – chrise

+0

Gern geschehen. – trincot