2016-05-14 17 views
1

Ich kann nicht erreichen, die assoziativen Werte von meinem Array zu echo.

Das ist mein PHP-Code:

<?php 
    $servername = "my host name"; 
    $username = "my username"; 
    $password = "my password"; 
    $database = "my database"; 
    try { 
     $conn = new PDO("mysql:host=$servername;dbname=$database", $username, $password); 
     $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
     $stmt = $conn->prepare("SELECT Street, Number, City, Country FROM extralocal"); 
     $stmt->execute(); 
    } catch (PDOException $e) { 
     echo $sql . "<br>" . $e->getMessage(); 
    } 
    $conn = null; 
?> 
<?php 
    $places = array(); 
    while ($place = $stmt->fetchAll(PDO::FETCH_ASSOC)) { 
     $places[] = $place; 
    } 
    foreach ($places as $place) { 
     echo $places['Street']; 
     echo $places['Number']; 
     echo $places['City']; 
     echo $places['Country']; 

    } 
?> 

Aus irgendeinem Grund, wenn ich echo jeder Wert aus der array in der foreach Schleife nichts auf der geladenen Seite zeigt nach oben, nicht einmal Fehler. Wenn ich jedoch var_dump die array sehe, kann ich sehen, dass die Werte da sind, also nehme ich an, dass die DB Verbindung einwandfrei funktioniert und die Werte korrekt erhalten werden. Es ist nur so, dass ich die spezifischen Werte nicht wiedergeben kann.

Jede Hilfe wird sehr geschätzt. Vielen Dank im Voraus!

+0

ersetzen löst [ 'Street']; von $ place ['Straße']; – Poria

+0

@Poria, Nichts, das gleiche Ergebnis. Keine Fehler. – Logixor

+4

Sie möchten 'fetch' und nicht' fetchAll' in Ihrer while-Schleife verwenden. Ansonsten speichern Sie alle Ergebnisse in einem SubArray! – Rizier123

Antwort

2
foreach ($places as $place) { 
    echo $places['Street']; 
    echo $places['Number']; 
    echo $places['City']; 
    echo $places['Country']; 
} 

ersetzen durch

foreach ($places as $place) { 
    echo $place['Street']; 
    echo $place['Number']; 
    echo $place['City']; 
    echo $place['Country']; 

} 

Verwenden fetch statt fetchAll in Ihrer while-Schleife Hoffe, dass es Ihr Problem $ Orte

+0

Vielen Dank für das Feedback aber leider hat es nicht funktioniert :( – Logixor

+0

Ok, nachdem ich das Problem als @ Rizier123 in den Kommentaren vorgeschlagen behoben habe ich auch herausgefunden, dass dies ein anderes Problem in meinem Code war. Danke! – Logixor