2016-05-17 16 views
1

ein bisschen ein Problem mit meinem PHP-Code zu haben ..PHP Mysql geholten Daten leer

$stmt = $db->prepare("SELECT * FROM mytable WHERE TheGroup = :SearchName ORDER BY TheTime DESC"); 
$stmt->bindParam(':SearchName', $request, PDO::PARAM_STR); 
$stmt->execute(); 
$result = $stmt->fetchAll(PDO::FETCH_ASSOC); 

$count = count($result); 
for ($i = 0; $i < $count; $i++) { 
    $mTheAvatar = $result[$i]->TheAvatar; 
    $mTheDirection= $result[$i]->TheDirection; 
    $mTheGroup = $result[$i]->TheGroup; 
    $mTheMedia = $result[$i]->TheMedia; 
    $mTheMessage = $result[$i]->TheMessage; 
    $mTheSenderName= $result[$i]->TheSenderName; 
    $mTheThumbImage = $result[$i]->TheThumbImage; 
    $mTheTime = $result[$i]->TheTime; 
    $mTheMediaExtension = $result[$i]->TheMediaExtension; 

    echo "hello"; 
    echo $mTheAvatar; 
    echo " <- this is avatar"; 
} 

Wenn ich einen Var_dump tun() Ich sehe die Daten ohne ein Problem angefordert wird. Wenn ich die Variablen Echo, sie sind leer .. Ich habe dreifach überprüft, dass die Tabellenspaltennamen korrekt sind ..

die $ mTheAvater ein Bild in der Tabelle ist, ob das einen möglichen Hinweis gibt, aber der Rest sind Blank auch so nicht sicher, was los ist?!?

+0

Könnten Sie die Ausgabe von 'var_dump()' hier einbeziehen? – Epodax

Antwort

3

können Sie testen:

$mTheAvatar = $result[$i]['TheAvatar']; 

Wie ich in der FETCH_ASSOC wissen, dass es Daten in obigen Struktur zurückgibt.

+0

Das ist richtig, 'FETCH_ASSOC' gibt ein assoziatives Array zurück – Dale

+0

Danke Mann !! das war es .. – Migz

+0

Gern geschehen –

1

Sie versuchen, sie zu lesen, als ob sie Objekte sind, sondern PDOStatement::fetchAll ein Array zurückgibt, so sollten Sie den Code wie folgt aussehen:

for ($i = 0; $i < $count; $i++) { 
    $mTheAvatar = $result[$i]['TheAvatar']; 
    $mTheDirection= $result[$i]['TheDirection']; 
    . 
    . 
    . 
    . 
    echo "hello"; 
    echo $mTheAvatar; 
    echo " <- this is avatar"; 
} 

Wenn Sie Objekte zu handhaben möchten, sollten Sie PDOStatement::fetchObject

+0

Danke, es war def die ['...'] die ich vermisste – Migz

0
verwenden

Das sollte besser sein - 1) es foreach verwendet; 2) unset(); 3) andere Struktur