Ankündigung

Einklappen
Keine Ankündigung bisher.

Fatal error? Aber wo?

Einklappen

Neue Werbung 2019

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

  • Fatal Error
    hat ein Thema erstellt Fatal error? Aber wo?.

    Fatal error? Aber wo?

    Hallo,
    ich versuche schon seit 2 stunden den fehler zu finden aber irgendwie klappt es nicht :/

    Hier mein Programm(als erstes wird tab_kunde gestartet):
    PHP-Code:
    // ********** tab_kunde **********
    //******************************
    <table width="800" cellspacing="0" cellpadding="0">
      <tr>
        <td><center>[b]Kunden Übersichtstabelle[/b]</center></td>
      </tr>
      <tr>
        <td><center><table width="100%" cellspacing="2" cellpadding="2">
        <?php
        
    include ("dbaktionen/load_kunde.php");
        for (
    $zaehler 0$zaehler<=count($kunde); $zaehler++){
            echo 
    '<tr>
                    <td>'
    .$kunde[$zaehler]->getKundeID().'</td>
                    <td>'
    .$kunde[$zaehler]->getKundeName().'</td>
                    <td>'
    .$kunde[$zaehler]->getKundeFirma().'</td>
                    <td>'
    .$kunde[$zaehler]->getKundeStrasse().'</td>
                    <td>'
    .$kunde[$zaehler]->getKundePlz().'</td>
                    <td>'
    .$kunde[$zaehler]->getKundeOrt().'</td>
                  </tr>'
    ;
          }
        
    ?>
         </table></center></td>
      </tr>
    </table>





    // **********  load_kunde **********
    //*******************************
    <?php
    include ("dbconnect.php");
    include (
    "class_kunde.php");

    $zaehler 0;

    $loadAll mysql_query ("SELECT * FROM tab_Kunden") or die ("Ungültige Abfrage: " mysql_error());

    while (
    $row mysql_fetch_object($loadAll)){

        
    $kunde[$zaehler] = new Kunde();
        
    $kunde[$zaehler]->setKunde($row->kundenID$row->kundenName$row->kundenStrasse$row->kundenPostleitzahl$row->kundenOrt$row->kundenFirma);
        
        
    $zaehler++;
    }

    mysql_free_result($loadAll);
    ?>





    // **********  class_kunde *********
    //*******************************
    <?php
    class Kunde{
        var 
    $kun_ID;
        var 
    $kun_Name;
        var 
    $kun_Firma;
        var 
    $kun_Strasse;
        var 
    $kun_Plz;
        var 
    $kun_Ort;
        
        function 
    setKunde($set_kunID$set_kunName$set_kunFirma$set_kunStrasse$set_kunPlz$set_kunOrt){
            
    $this->$kun_ID        $set_kunID;
            
    $this->$kun_Name    $set_kunName;
            
    $this->$kun_Firma    $set_kunFirma;
            
    $this->$kun_Strasse    $set_kunStrasse;
            
    $this->$kun_Plz        $set_kunPlz;
            
    $this->$kun_Ort        $set_kunOrt;
        }
        
        
        function 
    getKundeID(){
            return 
    $this->$kun_ID;
        }
        function 
    getKundeName(){
            return 
    $this->$kun_Name;
        }
        function 
    getKundeFirma(){
            return 
    $this->$kun_Firma;
        }
        function 
    getKundeStrasse(){
            return 
    $this->$kun_Strasse;
        }
        function 
    getKundePlz(){
            return 
    $this->$kun_Plz;
        }
        function 
    getKundeOrt(){
            return 
    $this->$kun_Ort;
        }
    }
    ?>
    Es wird immer folgender fehler ausgegeben:
    Fatal error: Call to a member function on a non-object in /www/htdocs/v084932/_programm/tabellen/tab_kunde.php on line 15

  • Zergling-new
    antwortet
    Ja.

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    ohhh, ein ziemluich blöder syntax Fehler der mich da seit gestern quält o_0
    üblicherweise wird es so gemmacht oder: $this->varname ??? thx ^^

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    error_reporting(E_ALL) wird dir den Fehler wahrscheinlich als Notice nennen.
    Wie greift man nochmal auf Klassen-Eigenschaften zu? Mit $this->$varname üblicherweise nicht...

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    k, der Fatal error wurde nun beseitigt doch es funktioniert trotzdem noch nicht ganz.

    array(2) { [0]=> &object(kunde)(7) { ["kun_ID"]=> NULL ["kun_Name"]=> NULL ["kun_Firma"]=> NULL ["kun_Strasse"]=> NULL ["kun_Plz"]=> NULL ["kun_Ort"]=> NULL [""]=> string(5) "Keine" } [1]=> &object(kunde)(7) { ["kun_ID"]=> NULL ["kun_Name"]=> NULL ["kun_Firma"]=> NULL ["kun_Strasse"]=> NULL ["kun_Plz"]=> NULL ["kun_Ort"]=> NULL [""]=> string(12) "Keine Ahnung" } }

    Obwohl alle iegenschaften des objektes gesetzt werden ist nirgends wo was drinne z.B.: ["kun_Strasse"]=> NULL
    Auserdem zeigt er in der Tabelle wo der einzelne eigenschaften anzeigen sollte nur die letzte Eigenschaft kun_Firma an.

    Hier mal eine übersicht welche eigenschaften gesetzt werden von der datenbank aus und welche im endeffekt angezeigt werden.

    Folgendes wird aus MySQL ausgelesen und in die Klasse eingefügt:
    objekt[0]:
    kundenID = 1
    kundenName = Igor
    kundenStrasse = Irgendwo
    kundenPostleitzahl = 55468
    kundenOrt = einOrt
    kundenFirma = Keine

    objekt[1]:
    kundenID = 2
    kundenName = Alex
    kundenStrasse = Unbekannt
    kundenPostleitzahl = 666666
    kundenOrt = ein zweiter Ort
    kundenFirma = Keine Ahnung

    nun sieht die ausgabe folgendermaßen aus:
    Keine | Keine | Keine | Keine | Keine | Keine
    Keine Ahnung | Keine Ahnung | Keine Ahnung | Keine Ahnung | Keine Ahnung|Keine Ahnung

    obwohl man in tab_kunde sehen kann dass ich versuche einzelne eigenschaften aufzurufen kommt immer nur die letzte Eigenschaft und bei var_dump kann man sehen dass die letzte eigenschaft garnicht richtig dar ist ([""]=> string(12) "Keine Ahnung").

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    Asooo, jaaa, mann, hab nicht berücksichtigt das array von 0 anfängt o_0 danke, glaube hätte alleine nie den fehler gepeilt.

    Einen Kommentar schreiben:


  • Der_Gerhard
    antwortet
    Naja, wenn 1 element drin ist, gehst du von 0 bis 1.
    Das sind 2 Elemente.
    Eins davon gibts nicht.

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    Entweder bin ich ganz blind oder komplett bescheuert o_0

    for ($zaehler = 0; $zaehler<=count($kunde); $zaehler++){
    }

    Was ist den daran falsch ?

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    In deiner for-Schleife ist die Abbruch-Bedingung falsch.

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    Habe nun ausgeführt var_dump und folgendes bekommen:

    array(2) { [0]=> &object(kunde)(7) { ["kun_ID"]=> NULL ["kun_Name"]=> NULL ["kun_Firma"]=> NULL ["kun_Strasse"]=> NULL ["kun_Plz"]=> NULL ["kun_Ort"]=> NULL [""]=> string(5) "Keine" } [1]=> &object(kunde)(7) { ["kun_ID"]=> NULL ["kun_Name"]=> NULL ["kun_Firma"]=> NULL ["kun_Strasse"]=> NULL ["kun_Plz"]=> NULL ["kun_Ort"]=> NULL [""]=> string(12) "Keine Ahnung" } }

    hmm

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    k, thx werde mal schauen

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    var_dump

    Einen Kommentar schreiben:


  • Fatal Error
    antwortet
    Das konnte ich auch der Fehlermeldung schon entnähmen, aber wieso nicht

    Einen Kommentar schreiben:


  • Zergling-new
    antwortet
    $kunde[$zaehler] ist wohl kein Objekt...

    Einen Kommentar schreiben:

Lädt...
X