Sorun php bir MySQL sonuç ayrıştırma olması

2 Cevap php

Ben bir veritabanından bazı sonuçlar çekmeye çalışıyorum ama ben beyin ölü tür bugün sanırım.

$castquery = "SELECT * FROM cast " .
    "WHERE player_id = '" . $userid ."' ";
$castresult = mysql_query($castquery) or die(mysql_error());
$castrow = mysql_fetch_array($castresult);

...

foreach($castrow['cast_id'] as $caster) 
{
    echo "<p>";
    if ($caster['avatar_url']!='') echo "<img src=\"".$caster['avatar_url']."\" alt=\"".$caster['name']."\">";
    echo "<a href=\"?edit=".$caster['cast_id']."\">".$caster['name']."</a></p>";
}

Elbette ben burada belirgin bir şey bakan değilim.

2 Cevap

Emin db yapısı ne, ama $castrow['cast_id'] tek bir alan değil, bir dizi değil. Ne muhtemelen demek:

while ( $castrow = mysql_fetch_array($castresult) ) {
    // use $castrow array here
}

yerine foreach arasında

Şimdi olduğu gibi her şeyden önce, sizin kod yalnızca bir satır almak olacaktır.

$castrow = mysql_fetch_array($castresult);

foreach($castrow['cast_id'] as $caster) 
{

Olmalı

while ($castrow = mysql_fetch_array($castresult)) {

  $caster = $castrow['cast_id'];
  ....