Undefined index

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

  • Undefined index

    Hallo zusammen ich habe ein Gästebuch erstellt.
    Das Abfragen von Daten aus einer Mysql-Datenbank funktioniert. Jedoch habe ich Probleme mit dem reinschreiben von Daten.


    Fehlermeldung
    Notice: Undefined index: name in c:\inetpub\wwwroot\guestbook\insert.php on line 24

    Notice: Undefined index: text in c:\inetpub\wwwroot\guestbook\insert.php on line 25

    Notice: Undefined index: datum in c:\inetpub\wwwroot\guestbook\insert.php on line 26

    Danke für euere Bemühungen!
    Zuletzt geändert von chrigionline; 02.02.2004, 15:01.
    ------------------------------------------
    Gruss Christian
    -----------------------------------------

  • #2
    irgendwelche array elemente existieren nicht
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      Ich habe nochmals ein bisschen herumgebastelt und jetzt nur noch diese
      zwei Fehlermeldungen:

      Notice: Undefined variable: text in c:\inetpub\wwwroot\guestbook\insert.php on line 23

      Notice: Undefined variable: text in c:\inetpub\wwwroot\guestbook\insert.php on line 23

      Vielleicht hilft euch mein Quellcode
      PHP-Code:
      <?php
      $server
      ="localhost";
      $user"root";
      $passwort "1234";
      $datenbank"guestbook"

      MYSQL_CONNECT($server$user$passwort) or die ( "<H3>Datenbankserver nicht erreichbar</H3>"); /* Zugriff auf SQL-Server */
      MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>"); /*die Datenbank wird ausgewählt*/
      ?>
      <form name="form1" method="post" action="<?php $PHPSELF ?>">
      <input type="text" name="name" value="dein name...">
      <input type="textarea" name="text" value="dein message...">
      <input type="HIDDEN" name="datum" value="<?php echo date("d.m.Y");?>">
      <input type="submit" name="Submit" value="Abschicken">
      <?php 
      if ((($text != "dein message...")&&($text != ""))&&(($name != "dein name...")&&($name != "")))
      MySQL_QUERY("INSERT INTO guestbook (name,text,datum) VALUES ('$name','$text','$datum')"); 
      ?>
      </form>
      ------------------------------------------
      Gruss Christian
      -----------------------------------------

      Kommentar


      • #4
        benutze doch mal $_POST
        h.a.n.d.
        Schmalle

        http://impressed.by
        http://blog.schmalenberger.it



        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
        ... nur ohne :-)

        Kommentar


        • #5
          Ist dies eine Versionsveränderung?
          Früher brauchte ich es nämlich nicht.
          Wärst du echt so nett und könntest kurz mein Quellcode mit dem $_Post richtig ergänzen? Damit ich daraus schliessen kann wie man es anwendet.

          Vielen Dank!
          ------------------------------------------
          Gruss Christian
          -----------------------------------------

          Kommentar


          • #6
            diese versionsänderung kam mit php version 4.1. davor hat man HTTP_POST_VARS benutzt. du versuchst mit globalen zu arbeiten, welche gar nicht da sind, weil nämlich register globals off ist. ( standard seit 4.1 )

            den umbau mach mal schön selber alle vars, die per post vesendet werden so ansprechen:
            $_POST['name_der_vars']
            Zuletzt geändert von schmalle; 02.02.2004, 14:18.
            h.a.n.d.
            Schmalle

            http://impressed.by
            http://blog.schmalenberger.it



            Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
            ... nur ohne :-)

            Kommentar


            • #7
              Ich habe es ausprobiert. Jedoch irgendwie etwas falsch gemacht. Vielleicht kannst du mir helfen.
              PHP-Code:
              <html>
              <head>
              <title>gaestebuch</title>
              <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
              </head>

              <body>
              <?php
              $server
              ="xxx";
              $user"root";
              $passwort "cxxxx";
              $datenbank"xxxx"/* Name der Datenbank */

              MYSQL_CONNECT($server$user$passwort) or die ( "<H3>Datenbankserver nicht erreichbar</H3>"); /* Zugriff auf SQL-Server */
              MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>"); /*die Datenbank wird ausgewählt*/
              ?>
              <form name="form1" method="post" action="<?php $PHPSELF ?>">
              <input type="text" name="name" value="dein name...">
              <input type="textarea" name="text" value="dein message...">
              <input type="HIDDEN" name="datum" value="<?php echo date("d.m.Y");?>">
              <input type="submit" name="Submit" value="Abschicken">
              <?php 
              if ((($_POST["text"] != "dein message...")&&($_POST["text"] != ""))&&(($_POST["name"] != "dein name...")&&($_POST["name"] != "")))
              MySQL_QUERY("INSERT INTO guestbook (name,text,datum) VALUES ($_POST["name"] ,$_POST["text"],$_POST["datum"] )"); 
              ?>
              </form>
              ------------------------------------------
              Gruss Christian
              -----------------------------------------

              Kommentar


              • #8
                hmm,

                PHP-Code:
                " ... VALUES ('".$_POST["value"]."' ... " 
                Die Zeit hat ihre Kinder längst gefressen

                Kommentar


                • #9
                  Ja, ich finde diese Zeile auch recht schräg. Der Editor gibt mir bereits in der obren Zeile ein Fehler aus. Könntest du mir echt ein bisschen genauer auf die Sprünge helfen, ich arbeite noch nicht sehr lange mit php.
                  ------------------------------------------
                  Gruss Christian
                  -----------------------------------------

                  Kommentar


                  • #10
                    mach es so, wie der hund es geschrieben hat, dann klappt es auch.
                    h.a.n.d.
                    Schmalle

                    http://impressed.by
                    http://blog.schmalenberger.it



                    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                    ... nur ohne :-)

                    Kommentar


                    • #11
                      Ich komme nicht weiter. Ich habe jetzt mehrere Möglichkeiten ausprobiert aber es funktioniert nicht.
                      ------------------------------------------
                      Gruss Christian
                      -----------------------------------------

                      Kommentar


                      • #12
                        und wir raten jetzt, wie dein aktueller code aussieht?
                        h.a.n.d.
                        Schmalle

                        http://impressed.by
                        http://blog.schmalenberger.it



                        Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                        ... nur ohne :-)

                        Kommentar


                        • #13
                          Sorry!

                          Also hier mein Versuch. Wobei ich vorab schon sagen muss das mir die 24.Linie. Also die mit der if Bedingung nicht gerade gefällt. Ich aber nicht weiss wie man sie am besten ändern kann.

                          PHP-Code:
                          <?php
                          $server
                          ="192.168.10.223";
                          $user"root";
                          $passwort "chrigu";
                          $datenbank"guestbook"/* Name der Datenbank */

                          MYSQL_CONNECT($server$user$passwort) or die ( "<H3>Datenbankserver nicht erreichbar</H3>"); /* Zugriff auf SQL-Server */
                          MYSQL_SELECT_DB($datenbank) or die ( "<H3>Datenbank nicht vorhanden</H3>"); /*die Datenbank wird ausgewählt*/
                          ?>
                          <form name="form1" method="post" action="<?php $PHPSELF ?>">
                          <input type="text" name="name" value="dein name...">
                          <input type="textarea" name="text" value="dein message...">
                          <input type="HIDDEN" name="datum" value="<?php echo date("d.m.Y");?>">
                          <input type="submit" name="Submit" value="Abschicken">
                          <?php 
                          if ((('".$_POST["text"]."' != "dein message...")&&('".$_POST["text"]."' != ""))&&(('".$_POST["name"]."' != "dein name...")&&('".$_POST["name"]."' != "")))
                          MySQL_QUERY("INSERT INTO guestbook (name,text,datum) VALUES ('".$_POST["name"]."' '".$_POST["text"]."''".$_POST["datum"]."' )"); 
                          ?>
                          </form>
                          ------------------------------------------
                          Gruss Christian
                          -----------------------------------------

                          Kommentar


                          • #14
                            if ((('".$_POST["text"]."' != "dein message...")&&('".$_POST["text"]."' != ""))

                            du prüfst hier den wert von $_POST["text"] ab, ohne dich vorher überhaupt zu erzeugen, ob das array-element an sich existiert.
                            und dies gibt halt ggf. die undefined-index fehlermeldung.

                            deshalb solltest du hier noch vorher per isset() oder empty() prüfen, ob es diesen index im $_POST-array überhaupt gibt. näheres siehe manual.
                            I don't believe in rebirth. Actually, I never did in my whole lives.

                            Kommentar


                            • #15
                              ersetz mal bei der <form> das $PHPSELF durch :

                              $PHP_SELF

                              Kommentar

                              Lädt...
                              X