Formular & MySql

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

  • Formular & MySql

    Hallo Zusammen,

    ich bin in Bezug auf PHP noch absoluter Anfänger und reisse
    mit jeden Moment die Haar vom Kopf.

    Folgendes Problem:

    Ich möchte Daten über ein Formular in einer MySQL Datenbank ergänzen.

    Habe eine Formular mit einem Textfeld "Name" und einem Button "Sende".

    Beim Senden wird eine seite "danke.php" aufgerufen mit folgendem Script:

    <?php

    include ("db_verbindung.php");
    $speichern="INSERT INTO firmen (strasse) VALUES (\"$strasse\")";
    mysql_query($speichern);
    ?>

    Nun zu meinem Problem:

    Wenn ich das ganze ausführe wird zwar ein neuer Datensatz in meiner Datenbank erzeugt (soweit so gut) jedoch mit keinem Inhalt. D.H Die Verbindung zur MySQL scheint zu funktionieren, jedoch schaffe ich es nicht das er den Wert "Strasse" von meinem Formular in die Datenbank schreibt.
    Was mache ich Falsch...?

    Gruss,
    Neils

  • #2
    PHP-Code:
    <?php

      
    include ("db_verbindung.php");

      
    $speichern="INSERT INTO firmen (strasse) VALUES ('$strasse')";
      
      
    /*

      und/oder so
      $speichern="INSERT INTO firmen (strasse) VALUES ('".$strasse."')";

      */

      
    mysql_query($speichern);

    ?>
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      benutz mal

      $_POST['strasse']
      TBT

      Die zwei wichtigsten Regeln für eine berufliche Karriere:
      1. Verrate niemals alles was du weißt!


      PHP 2 AllPatrizier II Browsergame

      Kommentar


      • #4
        Wo denn ?

        Kommentar


        • #5
          statt $strasse
          TBT

          Die zwei wichtigsten Regeln für eine berufliche Karriere:
          1. Verrate niemals alles was du weißt!


          PHP 2 AllPatrizier II Browsergame

          Kommentar


          • #6
            Egal was ich mache, es geht einfach nicht:

            Hier das PHP Scribt danke.php:
            PHP-Code:
            </head>

            <body bgcolor="#333366" text="#000000" link="#FFFFFF">
            <?php

            $dbserver
            "000.000.000.000";
            $dbname"xxxx";
            $dbuser"root";
            $dbpass"xxxxx";

            $connect mysql_connect($dbserver$dbuser$dbpass);
            $date date("Y-m-d H:i:s");

            if (
            $connect)
            {
            echo 
            "Verbindung hergestellt";
            }
            else 
            {
            echo 
            "Es konnte keine Verbindung hergestellt werden";
            }
            if (
            mysql_select_db($dbname$connect))
            {
            echo 
            "Datenbank $dbname wurde erfolgreich ausgewählt";
            }
            else
            {
            echo 
            "Es ist keine Verbindung zur DB möglich!";
            }

            $entry "insert into user (Username) values ('$str')";

            if (
            mysql_query($entry$connect));
            {
            echo 
            "Daten wurden eingetragen!";
            }
            mysql_close($connect);
            ?>
            </body>
            </html>


            Und hier das Eingabeformular index2.php:

            <html>
            <head>
            <title>Untitled Document</title>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            </head>

            <body bgcolor="#FFFFFF" text="#000000">
            <form name="form1" method="post" action="danke2.php">
              <input type="text" name="str">
              <input type="submit" name="Abschicken" value="Abschicken">
            </form>
            </body>
            </html>
            Bitte schaut doch nochmal drüber und sagt mir was ich falsch mache....

            :-(

            Gruss,
            Neils

            EDIT:
            ich hab mal den php-tag eingefügt, TBT

            Kommentar


            • #7
              PHP-Code:
              $entry "insert into user (Username) values ('".$_POST['str']."')"
              TBT

              Die zwei wichtigsten Regeln für eine berufliche Karriere:
              1. Verrate niemals alles was du weißt!


              PHP 2 AllPatrizier II Browsergame

              Kommentar


              • #8
                Geht immer noch nicht...

                Es wird mit zwar gesagt das was eingetragen wurde, jedoch
                ist wieder nur ein Datensatz mit leerem Inhalt eingefügt worden....

                Kann es an der Konfiguration von meinem Apache oder MySQL Server
                liegen ???

                Ich spring gleich aus dem Fenster......... ;-))

                Formular index2.php:

                <html>
                <head>
                <title>Untitled Document</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                </head>

                <body bgcolor="#FFFFFF" text="#000000">
                <form name="form1" method="post" action="danke2.php">
                <input type="text" name="str">
                <input type="submit" name="Abschicken" value="Abschicken">
                </form>
                </body>
                </html>


                Und meine Script danke2.php:

                <html>
                <head>
                <title>danke</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
                <link rel="stylesheet" href="file:///C|/Dokumente%20und%20Einstellungen/admin/Eigene%20Dateien/Shoobridge%20Consulting/Hompage/Azubi/test" type="text/css">
                </head>

                <body bgcolor="#333366" text="#000000" link="#FFFFFF">
                <?php

                $dbserver= "192.168.0.4";
                $dbname= "azubistellen";
                $dbuser= "root";
                $dbpass= "230598";

                $connect = mysql_connect($dbserver, $dbuser, $dbpass);
                $date = date("Y-m-d H:i:s");

                if ($connect)
                {
                echo "Verbindung hergestellt";
                }
                else
                {
                echo "Es konnte keine Verbindung hergestellt werden";
                }
                if (mysql_select_db($dbname, $connect))
                {
                echo "Datenbank $dbname wurde erfolgreich ausgewählt";
                }
                else
                {
                echo "Es ist keine Verbindung zur DB möglich!";
                }

                $entry = "insert into user (Username) values ('".$POST['str']."')";

                if (mysql_query($entry, $connect));
                {
                echo "Daten wurden eingetragen!";
                }
                mysql_close($connect);
                ?>
                </body>
                </html>



                Gruss,
                Neils
                Zuletzt geändert von nshoobridge; 15.11.2002, 16:18.

                Kommentar


                • #9
                  nicht

                  $entry = "insert into user (Username) values ('".$POST['str']."')";

                  sondern

                  $entry = "insert into user (Username) values ('".$[color=red]_[/color]POST['str']."')";
                  TBT

                  Die zwei wichtigsten Regeln für eine berufliche Karriere:
                  1. Verrate niemals alles was du weißt!


                  PHP 2 AllPatrizier II Browsergame

                  Kommentar


                  • #10
                    Ich glaube ich spring' aus der Hose.... DASSSS GGGEEEHHHTT !!!!

                    JJUUUHUHUHUHU.... Danke !

                    Aber wieso muss ich dieses blöde $Post_... davor setzten ?
                    Gibt es nicht eine Möglichkeit einfach nur die Variable zu nutzen ?`


                    Gruss Neils

                    Kommentar


                    • #11
                      der fehler lag nicht bei dem post, sondern

                      1. du hattest den string nicht begrenzt für die DB
                      2. du hattest keine updateeinschränkung gesetzt. es wurden alle datensätze verändert.

                      du kannst aber auch nur $str statt mit dem post zusammen schreiben. ist aber nicht mehr offiziell. bei einigen versionen geht es aber noch.
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        zu1. Was meinst Du ich habe den String nicht beschränkt. Meinst Du
                        die maximale Anzahl von Zeichen ?
                        zu2. Was meinst Du mit updateeinschränkung ???

                        (Bin doch noch in Sachen php Anfänger ;-( )

                        Kommentar


                        • #13
                          zu 1.
                          das war falsch
                          $speichern="INSERT INTO firmen (strasse) VALUES (\"$strasse\")";

                          zu 2.
                          dein update ging über die ganze tabelle, OHNE WHERE ....
                          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                          Kommentar

                          Lädt...
                          X