Ergebnis von fetch_object in array

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Ergebnis von fetch_object in array

    Hallo alle miteinander.

    Ich verwende eine eigene Klasse fuer DB-Zugriffe.

    PHP-Code:
    //n-Datensaetze werden aus der Datenbank gelesen und zurueckgeliefert.
      //Parameter:
      //sql   : SQL-Anweisung fuer die DB
      //zeilen: Enthaellt im Erfolgsfall das Array mit den gelesenen Datensatz, im Fehlerfall eine Fehlermeldung.
      
    function queryObjectFeld($sql,&$zeilen) {
        
    $result = array();
        if (
    $result $this->o_db->query($sql)) 
        { 
          if (
    $result->num_rows)
          {
             while (
    $row $result->fetch_object())
             {
               
    $zeilen[]=$row;
             } 
             return 
    TRUE;
          }
          else
          {
             
    $zeilen='';
             return 
    FALSE;
          } 
        } 
        else 
        {
          
    $zeilen=$this->o_db->error;
          return 
    FALSE;
        }
      } 
    Der Zugriff erfolgt dann wie folgt:

    PHP-Code:
    if($o_db->queryObjectFeld($query,$zeilen)==FALSE)
           {
             
    $err_disp="visible";
             
    $err_msg="FEHLER: ".$zeilen;
           }
           else
           {
             foreach (
    $zeilen as $zeile
    Dies fuehrt zu folgender Fehlermeldung:
    [COLOR=red]Parse error: parse error, unexpected T_FOREACH in[/COLOR]

    Kann mir jemand auf die Spruenge helfen?
    Man kann doch ein Array von Objekten mit foreach abarbeiten, oder?

    gruesse

  • #2
    deine foreach sollte zunächst eigentlich keinen parse-error auswerfen. dein fehler muss also woanders liegen.

    warum benutzt du eigentlich nicht mysql_fetch_assoc() in deiner Klasse? Lässt sich idr. öffter und besser gebrauchen.

    Kommentar


    • #3
      Hi, danke fuer die Antwort.

      Hattest Recht. Der Fehler lag in einer Zeile vorher ;-).
      Im Original hatte ich dort noch eine DEBUG-Echo-Anweisung stehen
      und hatte doch glatt das Semikolon am Ende der Anweisung vergessen
      *schaem*.

      Man sollte einfach oefter mal ein paar Minuten Pause machen,
      durchatmen und versuchen die Betriebsblindheit auszuschalten ;-).

      Hat fetch_assoc irgendwelche Vorteile?
      Ich hatte mir gemerkt, dass es grds. keinen Unterschied gibt.

      Bei fetch_object heisst es halt $zeile->feldname und bei fecht_assoc: $zeile[feldname]

      Oder liege ich damit falsch?

      gruesse

      Kommentar


      • #4
        Naja, die Array-Methode hat den vorteil, dass du mit Arrays idr. mehr anfangen kannst, als mit objekten. ist zumindest in den meisten template-engines so und auch sonst wird, wenn es um den dateninput geht, eher auf arrays als auf objekte gezählt.

        Kommentar

        Lädt...
        X