Suche unterstützung bei anfängerprojekten

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

  • Suche unterstützung bei anfängerprojekten

    Hallo, bin neu hier!

    ich suche dringend jemanden, der mir bei meinen Lernprojekten hilft.

    Es geht um folgendes:
    Ich habe einen Kurs bestehend aus 7 Kapiteln durchgezogen.

    Sessins / Cookies, Array (Gästebuch) , externe Dateien, Funktionen, Parameterübergabe, Formulare.

    Hier genauere Informationen:
    Ich brauche für meine Lernziele jemanden, der mir die Skripte auf Fehler überprüft. und der mir beim Lösen von Aufgaben hilft, sofern ich nicht weiterkomme.

    Die erste Aufgabe zum Thema externe Dateien, habe ich lösen können, allerdings zeigt der Debuger folgenden Fehler nicht an:
    Notice: Undefined variable: inhalt in

    C:\xampp\htdocs\externe_Datei\auswertung5.php on line 40
    Die Dateiauswahl, war leider nicht erfolgreich! ?>

    Ich weis trotz Debuger nicht was da falsch sein soll, zumal der Debuger im Problemfenster keine Fehlertmeldung ausgibt, aber trotzdem muss doch der Fehler da sein?

    Dabei brauchte ich jemanden, der mich bei der Umsetzung des Projektes, bzw. den weiteren Projekten hilft. Sofern ich Unterstützung brauche!
    Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
    ### Eine BITTE ###
    Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

    Danke

  • #2
    Hehe, deine Hausaufgaben erledigen. Sehr lustig.

    Ganz ehrlich. Du möchtest Programmieren können, oder zumindest eine entsprechende Auszeichnung erhalten und kannst weder Englisch noch die einfachsten Grundlagen?

    Bitte mach dir klar, was "Hinweis, eine undefinierte Variable $inhalt" heißen könnte. Dann sollte sich der Fehler leicht beheben lassen.

    Bei konkreten Fragen helfen wir gerne, aber pauschale Hausaufgabenerledigung gibt es hier sicher (auch im Projekthilfeforum) nicht.

    Kommentar


    • #3
      Naja, das weis ich schon (Ich denke es zumindest!)

      Undefined Variable $inhalt bedeutet:

      Bei der Variable $inhalt, handelt es sich um eine Variable, die keine Werte zu gewiesen bekommt, also leer ist, oder.

      Wobei Undefined bedeutet:
      nicht festgelegt, nicht bestimmt

      Das würde ich so sagen!

      Ist das richtig?
      Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
      ### Eine BITTE ###
      Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

      Danke

      Kommentar


      • #4
        Bei der Variable $inhalt, handelt es sich um eine Variable, die keine Werte zu gewiesen bekommt, also leer ist, oder.
        Falsch!

        PHP-Code:
        $leer '';
        echo 
        $leer;
        echo 
        $gibtsnicht

        Kommentar


        • #5
          Du kannst deinen Code auch einfach mal hier zeigen ...
          bei konkreten Problemen auszugsweise, zur allgemeinen Kontrolle auch mal komplett (als ZIP anhängen).

          Kommentar


          • #6

            Kommentar


            • #7
              Erstmal vielen herzlichen Dank!

              Am besten ich sende den code als Zip - Datei komplett. Ich habe die entsprechenden Stellen mit einem #Zeile 42 (Browseranzeige, vom Ort)
              ### Vorab ein paar Informationen ###
              Bei dieser Datei handelt es sich um ein 'Übersetzungsprogramm'.
              Das Programm besteht aus 4 Dateien:
              2 Dateien, die deutsche Begriffe enthalten
              die anderen Beiden enthalten die Übersetzungen

              Die Aufgabe:
              Mit einer while - Schleife je nach Auswahl eine Datei mit deutschen Begriffen und eine Datei mit den Übersetzungen auslesen. Und diese in die 'uebersetung.dat' je nach Übersetzungsrichtung
              deutsch - englisch oder englisch - deutsch

              ans chließend den Inhalt der 'uebersetung.dat' je nach rRichtungsauswahl formatiert ausgeben:
              include - Befehl in den </pre> - Tag eingebunden.

              Der Inhalt aller 4 Dateien soll in die 'uebersetung.dat' eingetragen werden!


              Der Anfang des Problemgebietes habe ich wie folgt gekennzeichnet:
              #Hier beginnt der Fehlerbereich:

              ### Fehlerbeschreibung: ###

              Die while - Schleife soll zwei externe Dateien auslesen. Ausdruck mit einem logischen && verknüpft. Zeile: 23

              nach jedem Auslesen, werden die Inhalte der beiden Dateien in einer Variable abgespeichert. Zeile: 29

              ### Die Fehlermeldung: ###
              Notice: Undefiend Variable $inhalt in line 42
              (Variable wird kein Wert zugewiesen, in diesem Fall: die Funktion fgets kann der Variablen $inhalt keine Werte zu weisen, die Folge:
              Die 'uebersetzung.dat' bleibt ohne Einträge, folglich können diese auch nicht ausgelesen werden.

              ### Vermutung, wo der Fehler sein könnte ###
              Ich denke die Fehlerquelle liegt darin:
              Die Eintragfunktion fput konnte nicht ausgeführt werden, weil ich irgendwie in Sachen Dateizeiger einen Fehler gemacht habe, zumidest liegt beim Eintragen in die gemeinsame Datei 'uebersetzung.dat' der Fehler, weil diese keinen Inhalt enthält.

              => Ich denke es zumindest, dass er in diesem Bereich leigt, kann ihn aber nicht lokalisieren. Zumal der Debuger keine Meldung ausgibt!

              => Ansonsten habe ich KEINE Ahnung, was ursächlich sein könnte!

              Ich sende das Dingen mal komplett, die entsprechenden Stellen habe ich mit einem # markiert.

              Fehlerbereich - Beginn habe ich wie folgt markiert:
              ### Beginn: Fehlerbereich: ###

              Das Ende des Bereiches, mit:
              ### Ende: Fehlerbereich ###
              Angehängte Dateien
              Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
              ### Eine BITTE ###
              Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

              Danke

              Kommentar


              • #8
                1. Zeile: Kein Doctype. Die Ausgabe deines Scripts ist kein valides HTML.

                4. Zeile: Du solltest immer <?php statt <? verwenden, denn die short tags kann man deaktivieren und dann wird plötzlich dein Code im Browser angezeigt inkl. aller Passwörter.

                5. Zeile: In PHP-Kommentaren haben HTML-Entities wie &amp;auml; nichts verloren.

                9. Zeile: error_reporting() gehört ganz an den Anfang.

                17. Zeile: Unnötige Klammern. Auch an vielen anderen Stellen, z.B. im nächsten IF und WHILE.

                Dann kommt im Script der angesprochene Fehler:
                PHP-Code:
                while( ( $de fgets($germ) ) && 
                    ( 
                $en fgets($englis2) ) )
                {
                    
                ### Beginn:  Fehlerbereich: ###
                    
                $inhalt $de ' ::: ' .$en #hier muss irgendwo der Fehler liegen
                    
                $inhalt.= $en':::' .$de ;

                Du hast sogar schon die richtige Zeile gefunden!
                Jetzt liest du bitte unsere Regeln und wendest sie an - lass dir $inhalt nach jeder Veränderung ausgeben.
                Dann weißt du was passiert. Warum es passiert, steht auf php.net/manual in den Kapiteln über Strings und Operatoren.

                Zum Rest des Scripts ...

                41. Zeile: $fpOut kann geschlossen werden.
                89. Zeile: Du wiederholst den Fehler von oben. Steht das so in deinem Buch?!

                Allgemein fällt auf, dass die zwei Hälften deines Scripts fast identisch sind. Sowas kapselt man in Funktionen.
                Zuletzt geändert von onemorenerd; 16.11.2007, 21:05.

                Kommentar


                • #9
                  Hallo,
                  ich habe error_reporting(E_ALL); direkt unter <?php gesetzt,
                  gibt jedoch keine Meldung aus, wieso?

                  (richtig, brauch ich wegen Worddatei):
                  kleine Frage: die Klammern, die ich zu viel hatte, sind doch keine Fehler sondern nur unnötig, oder, weil das Problem-Fenster zeigte nichts an, deswegen diese Frage!

                  zu: 17.Zeile, ich habe das wie folgt gelöst:
                  if ( ( $germ = fopen ("german2.dat", "a") ) &&
                  $englis2 = fopen ("english2.dat", "a") )


                  ich habe die Variable $inhalt außerhalb des Schleifenrumpfes, am Ende der Schleife gesetzt, nach dem der Dateiinhalt in die Variable $inhalt eingetragen wurde:

                  //$inhalt ausgeben
                  echo $inhalt ;

                  ### interne Browser Ausgabe/ein Ausschnitt ###
                  Notice: Undefined variable: inhalt in C:\xampp\htdocs\externe_Datei\auswertung5.php on line 35

                  Notice: Undefined variable: inhalt in C:\xampp\htdocs\externe_Datei\auswertung5.php on line 46

                  Notice: Undefined variable: deut in C:\xampp\htdocs\externe_Datei\auswertung5.php on line 125

                  Warning: fclose(): supplied argument is not a valid stream resource in C:\xampp\htdocs\externe_Datei\auswertung5.php on line 125
                  Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
                  ### Eine BITTE ###
                  Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

                  Danke

                  Kommentar


                  • #10
                    Schlag mal im Manual nach, was error_reporting() macht!
                    Dann beseitigst du alle Notices, Warnings und Errors. Wenn du an einer bestimmten Stelle nicht weiterkommst, kannst du gern wieder nachfragen. Dann aber bitte den Codeabschnitt dazu posten ... aus deinen Erklärungen werde ich nicht schlau.

                    Kommentar


                    • #11
                      ich habe die Variable $inhalt außerhalb des Schleifenrumpfes, am Ende der Schleife gesetzt, nach dem der Dateiinhalt in die Variable $inhalt eingetragen wurde:
                      Du hast auch gepürft, ob die variable wirdglich "eingetragen" wurde?

                      Kommentar


                      • #12
                        Hallo,
                        ich habe eben im Manual nachgesehen. Und habe die function auf die Stufe gesetzt, wo falsch oder falsch gesetzte Variablen angezeigt werden gesetzt. Das Problemfenster zeigt keinerlei Warnings, Notice(Info) Problem mehr an. Die Funktion, zur Anzeige von Fehlern
                        Zuletzt geändert von prophp; 19.11.2007, 16:42.
                        Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
                        ### Eine BITTE ###
                        Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

                        Danke

                        Kommentar


                        • #13
                          Hallo, der Borwser zeigt drei Warnings an. Alle Warnings hängen mit dem Schlißene der Dateien zusammen. Ursache der Warnungen: Ich habe die Dateien doppelt geschlossen.

                          Was mich an dieser Stelle interessieren würde:
                          Was bedeuten diese Warnungen programmtechnisch, weil das Problemfenster zeigt keine Warnungen an?

                          aber immer noch: Notice: Undefiend Variable $inhalt

                          ich hab mir eben die Sache mit dem Öffnungsmodus angesehen/überlegt, ob da vielleicht der Fehler sein könnte!

                          ABER auch nicht. (weil 'a' öffnet die Datei und setzt den Zeiger ans Dateiende, weil sonst der bestehende Inhalt von neuem Inhalt überschrieben würde, was hier ja nicht sein darf. Der 'Inhalt anderere Dateien (deutsch u. english) soll an den bereits bestehenden Inhalt, der anderen Dateien angehängt werden.

                          Folglich ist der Modus 'a' (a setzt den Pointer ans Ende der Datei, fputs schriebt anschließend den Inhalt an die Zeigerposition, hierbei wird der neue Inhalt and den bereits bestehenden 'angehängt')

                          Also kann hier der Fehler auch nicht liegen, aber wo dann?

                          Was heißt denn Variable eingetragen
                          vielleicht: Inhalt eingetragen?

                          Meine zweite Vermutung:
                          Da die Variable $inhalt kein Wert ausgibt, vermute ich, dass diese keinen enthält, kann aber auch nicht sein (Bezug auf: Posting), aber wiseo wird bei der Variablen Ausgabe kein Wert ausgegeben.

                          Hinweis auf möglichen Fehler:
                          die Datei uebersetzung.dat enthält ebenfalls keine Werte, folglich muss der Fehler im Bereich der Funktion, fputs liegen ? ?

                          Hier: der betreffende Abschnitt, vielleicht doch wo anders?
                          PHP-Code:
                          while( ( $de fgets($germ) ) && 
                                       
                          $en fgets($englis2)  )
                                      {

                                           
                          ### Beginn:  Fehlerbereich: ###
                                           
                          $inhalt $de ' ::: ' .$en #Fehler?
                                           
                          $inhalt.= $en':::' .$de ;
                                      }
                                  
                                  
                          //$inhalt ausgeben 
                                  
                          echo $inhalt #gibt keinen Inhalt aus!
                                  
                                       
                                     
                          fclose ($germ) ;
                                         
                          fclose ($englis2) ;
                                  
                                          
                          // nach Schließung der Dateien, Inhalt anhängen
                                         
                          if(!($fpOut fopen("uebersetung.dat""a") ) )
                                         die (
                          "Kann leider nicht ge&ouml;ffnet werden") ;
                                      
                          // anschließend gesammelten inhalt in die uebersetzung.dat, je nach richtung reinschreiben
                                      
                          fputs $fpOut $inhalt ) ; #Zeile: 42
                                          
                          fclose $fpOut) ;
                              
                                  
                               
                          //$inhalt ausgeben 
                              
                          echo $inhalt ;   #gibt keinen Inhalt aus! 
                          Vielleicht bin ich bei einer falschen Stelle ?
                          Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
                          ### Eine BITTE ###
                          Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

                          Danke

                          Kommentar


                          • #14
                            Es wird immer deutlicher, dass dieses Script zu groß für dich ist. Fangen wir mal bei den Grundlagen an ...

                            So ist es korrekt:
                            PHP-Code:
                            $var 'foo';    // erst definieren
                            echo $var;    // dann benutzen 
                            So ist es falsch:
                            PHP-Code:
                            echo $var;    // benutzen ohne vorherige Definition 
                            Dieses Beispiel würde "undefined variable" hervorrufen.

                            Genau das passiert bei dir auch. Undefined variable, undefinierte Variable.

                            Deine Definition von $inhalt steht in der while-Schleife.
                            Nach der Schleife, beim echo, ist $inhalt noch immer undefiniert.
                            Was schließt du daraus?


                            (Mit Testausgaben kannst du deine Vermutung überprüfen.)

                            Kommentar


                            • #15
                              naja, wenn ich die Variable in der Schleife definiert habe, aber diese nach der Schleife durch echo nicht ausgegeben wird und das ganze mit Undefined Variable zu tun hat, dann würde ich sagen, dass ich die Variable falsch gesetzt habe.

                              Ich habe die Variable $inhalt wie folgt ausgegeben:

                              PHP-Code:
                              $inhalt $de ' ::: ' .$en ;
                              $inhalt.= $en':::' .$de ;
                              echo 
                              $inhalt
                              Ich hab doch die Variablen, der $inhalt doch richtig zugeordnet, hab nochmal im Manual nachgesehen, also deswegen geht's mir nicht ins Hirn, dass es wircklich daran liegt . . . .

                              Eher vielleicht daran:
                              Die Datei deutsch.dat lässt sich nicht öffnen, aber wieso nicht und die Datei uebersetzung.dat bleibt leer.

                              Naja, immerhin habe ich den Fehler finden können. wenigstens etwas !!

                              $inhalt ="variable definieren";
                              echo $inhalt; gibt dann: variable definieren aus.
                              => somit ist die Variable $inhalt festgelegt, gesetzt.

                              . . . also, kann wie ich oben gesagt habe, es an der falsch gesetzten Variable liegen, was aber auch nicht sein kann, denn so ist sie
                              PHP-Code:
                              richtig:
                              $inhalt $de.$en ;
                              $inhalt. = $en.$de 
                              Der . verknüpft Variablen mit einander (Variablen werden als String zusammengesetzt und der Variablen $inhalt zugewiesen.
                              Ich möchte mich bei Allen dir mir beim Umsetzen von meinen Lernzielen helfen bedanken!
                              ### Eine BITTE ###
                              Bitte gebt mir Rückmeldungen über: Strukturfehler, Schreibstil und Ausdrucksweise in Fragen und Antworten

                              Danke

                              Kommentar

                              Lädt...
                              X