• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

mysql_fetch_assoc

Status
Für weitere Antworten geschlossen.

m0sT

Neues Mitglied
Hi, hab ein kleines Problem und steh auf'm Schlauch:

[ $res_ranks = resource(50) of type (mysql result); ]

PHP:
PUBLIC function getNumRows($result) {

  $res_cop = $result;

    $x = 0;

    while ($rows = mysql_fetch_assoc($res_cop)) {

      $x++;

    }

  return $x;

}
PHP:
while ($rows = mysql_fetch_assoc($res_ranks)) {

  echo $rows['name'].'<br>'; // funktioniert

}
PHP:
if (sysCore :: mysqlObj()->getNumRows($res_ranks) != 0) {

  while ($rows = mysql_fetch_assoc($res_ranks)) {

    echo $rows['name'].'<br>'; // funktioniert NICHT! WARUM?
  
  }  

}
Philip

Sobald ich diese Funktion nutze geht es nicht mehr,
es hätte auch so sein können:

PHP:
if (sysCore :: mysqlObj()->getNumRows($res_ranks) == 0) {

  return false;

}

while ($rows = mysql_fetch_assoc($res_ranks)) {

  echo $rows['name'].'<br>'; // funktioniert NICHT! WARUM?
  
}
 
Zuletzt bearbeitet:
Werbung:
sysCore :: mysqlObj()->getNumRows($res_ranks)

ehm..... joa ne is doch irgendwie klar wenn man sich das anguckt? oder schreibst du sonst auch so sachen wie

opendir()->read();

o_O

nebenbei warum benutzt tu nicht PHP: mysql_num_rows - Manual o_O komisch sowas...
 
Das solltest du annehmen, wie es da steht oO
'getNumRows()' gehört zur Klasse 'DB'
und 'DB' wird in der Funktion 'mysqlObj()' in der Klasse
'sysCore' instanziert.
Außerdem sollte dir auffallen, dass die Funktion, deinem Beipiel nach zu urteilen (opendir()->read()),
getNumRows() heißen müsste, sie heißt aber mysql_num_rows().
Daran hätteste merken können, dass es meine Funktion ist.
 
Werbung:
ich hab doch gemerkt das das deine funktion ist :-D man duuu xD das du es selber machst anstadt mysql_num_rows zu benutzen oder gleich die mysql interne COUNT() finde ich trotsdem schwachsinn... da du ja auch mysql_fetch_assoc verwendest...

so und zu deinem problem schonmal so versucht?

$class -> var_von_anderer_class -> function();? damit kommst du dann ja ansich besser klar -.-'
 
Ich benutz in der Funktion auch 'mysql_num_rows', das oben war ein Test, weil 'mysql_num_rows' einmal nicht ging, lag aber am Result hab' ich gemerkt (;
Naja, Problem hat sich erledigt, der Fehler war denkbar einfach.

Achja und ne eigene Funktion für mysql_num_rows zu verwenden ist kein Schwachsinn, ich lager halt aus, aber Funktionen für alle mysql_fetch_assoc()-Fälle zu schreiben wäre Unsinn.

COUNT() macht auch keinen Sinn, weil ich die Ergebnisse ja benötige, aber ich hab ne Funktion mit COUNT(),
halt für Zählzwecke.

Philip
 
Du brauchst ja die ergebnisse? :-D man lern SQL :-D echt jetzt ^^ ich meine für was ist zwischen SELECT und FROM denn sonst so viel platz? :-D
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
Du brauchst ja die ergebnisse? :-D man lern SQL :-D echt jetzt ^^ ich meine für was ist zwischen SELECT und FROM denn sonst so viel platz? :-D
Lern lieber selber SQL anstatt hier einen auf Klugscheißer zu machen :-?
Wenn er die Datensätze alle braucht kann er kein COUNT() verwenden ;)


N43
 
naja man könnte COUNT() und die ausgabe der Felder über eine GroubBy sortierung in eine Abfrage stopfen, aber eigentlich nicht sinnvoll
 
Werbung:
jaja habs vergessen... außer frage steht jedoch dass 2 mysql querys schneller sind als einer mit mysql_num_rows...

und berechnet die ausführungszeit mal selber bevor ihr eirder anfangt zu meckern...

ich habe einen durchschnitt von 1 bis 2 ms die die variante mit 2 querys schneller ist...

wer jetzt sagen will das ist nicht viel hällt besser die klappe! -.-'
 
Werbung:
Status
Für weitere Antworten geschlossen.
Zurück
Oben