Webhilfe.info/board

Normale Version: Keine Ausführung der while
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo.
Habe folgendes Script.
PHP-Code:
#Kategorie anschauen
if($action == 'show_cat') {
$categoryid $_GET["categoryid"];
$result $db->query("SELECT id,titel,description,website,author,categoryid,klicks FROM bb".$n."_linklist_links WHERE `categoryid` = '".$categoryid."'");
echo 
mysql_affected_rows();
    $link_by_cat '';
        while ($row $db->fetch_array($result)) {
echo 
"lala<br>";
    $id $row["id"];
    $titel $row["titel"];
    $description substr($row["description"],0,50);
    if(substr($row["description"],0,50)) { $description .= '..'; }
    $website $row["website"];
    $author $row["author"];
    $klicks $row["klicks"];
$comments_sql $db->query("SELECT id FROM bb".$n."_linklist_comments WHERE `linkid` = '".$id."'");
    $comments mysql_num_rows($comments_sql);
$asses_result $db->query("SELECT id,assessment,userid,linkid FROM bb".$n."_linklist_asses WHERE `linkid` = '".$id."'");
    $asses_all mysql_num_rows($asses_result);
    $asses_row $db->fetch_array($result);
        $asses_id $asses_row["id"];
        $asses_assessment $asses_row["assessment"];
        $asses_userid $asses_row["userid"];
        $asses_linkid $asses_row["linkid"];
    $asses_votes 0;
    while($assessments_row $db->fetch_array($result)) {
        $asses_votes $asses_votes+$assesments_row["assessment"];
    }
    if($asses_all != 0) {
        $asses_quote $asses_votes/$asses_all;
    }
        $asses_round round($asses_quote);
        $asses_image $asses_quote*10;
if(
$asses_round == or $asses_round == or $asses_round == or $asses_round == 4) { $asses_color "red"; }
if(
$asses_round == or $asses_round == or $asses_round == or $asses_round == 8) { $asses_color "blue"; }
if(
$asses_round == or $asses_round == 10) { $asses_color "green"; }
            $link_by_cat .= '
            <tr>
                <td class="tableb" valign="top">
                <span class="smallfont"><a href="linklist.php?action=show_link&linkid='
.$id.'" title="Ersteller: '.$author.'"><b>'.$titel.'</b></a></span><br />
                <span class="smallfont">'
.$description.'</span></td>
                <td class="tableb" valign="top"><span class="smallfont"><a href="'
.$website.'" target="_blank">'.$website.'</a></span></td>
                <td class="tableb" valign="top"><span class="smallfont">'
.$klicks.' Klicks</span></td>
                <td class="tableb" valign="top"><span class="smallfont">'
.$comments.' Kommentare</span></td>
                <td class="tableb" valign="top"><span class="smallfont">'
.$asses_all.' Bewertungen<br /><img src="images/linklist_'.$asses_color.'.gif" width="'.$asses_image.'" height="5" /></span></td>
            </tr>'
;
        }

$result $db->query("SELECT id,category FROM bb".$n."_linklist_cats WHERE `id` = '".$categoryid."'");
        $row $db->fetch_array($result);
    $category $row["category"];
eval(
"\$tpl->output(\"".$tpl->get("linklist_show_cat")."\");");

Oben bei mysql_affected_rows gibt er 2 aus! D.h. 2 sind angesprochen. Aber er gibt nur eine aus.
Hat jemand eine Ahnung wieso?
Ich versteh es einfach nicht Mad(

Danke im Vorraus Smile
ZeitenWandel schrieb:Oben bei mysql_affected_rows gibt er 2 aus! D.h. 2 sind angesprochen. Aber er gibt nur eine aus.

Laut : http://de3.php.net/manual/de/function.my...d-rows.php
Zitat:[...]liefert die Anzahl betroffener Datensätze durch die letzte INSERT, UPDATE oder DELETE Anfrage an den Server[...]

So wie ich das verstehe, wird dein SELECT da nicht mit eingefasst. Es muss also ein älteres Ergebniss sein. Vielleicht besteht ein Problem in deinen Funktionen die du ausgelagert hast?
Hab das nun so:
PHP-Code:
$categoryid $_GET["categoryid"];
$result $db->query("SELECT id,titel,description,website,author,categoryid,klicks FROM bb".$n."_linklist_links WHERE categoryid = '".$categoryid."'");
echo 
mysql_num_rows($result);
    
$link_by_cat '';
        while (
$row $db->fetch_array($result)) { 
Bei mysql_num_rows gibt er ebenfalls 2 aus.
Zitat:[..]Diese Funktion ist nur gültig für SELECT Befehle.[..]

Ich versteh es einfach nicht Mad
*push*
Widmet sich jemand noch der Frage? :>
Wollte das eigentlich noch bis zum 1.8. fertig bekommen :>
Hallo !

Was ich jetzt auf die schnelle gesehen habe, kannst du das nicht so schreiben:

PHP-Code:
categoryid '".$categoryid."'"); 


Ich glaube, du musst das anders schreiben.

Schau dazu mal hier: http://www.schattenbaum.net/php/abfrage2.php

Gruß

Sam
Referenz-URLs