Will Daten in Tabelle eintragen es passiert nix

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

  • Will Daten in Tabelle eintragen es passiert nix

    Hi Leute,
    will mich erstmal vorstellen: Ich bin Screendesigner und habe mir jetzt vorgenommen PHP zu lernen. Bin also ziemlicher Neuling. Ab und an mal ein Script geklaut und gelöscht was ich nicht brauchte – das ist mein derzeitiger Horizont.

    So nun also mein Problem:
    Ich arbeite gerade dieses Tutorial durch:
    MySQL mit PHP - Tutorial, Datensätze speichern
    und da habe ich mit folgendem Script eine Tabelle erzeugt:
    <?
    include ("db.php");
    mysql_query("CREATE TABLE cds (
    id int(255) NOT NULL auto_increment,
    interpret varchar(100) NOT NULL,
    titel varchar(100) NOT NULL,
    PRIMARY KEY (id) );");
    mysql_close();

    echo "Die Tabelle wurde angelegt";
    ?>
    Wenn ich nun mit PHPMYADMIN schaue ist diese auch angelegt mit den Feldern "id", "interpret" und "titel". Ich bin begeistert. Der nächste Punkt verwirrt mich allerdings schon wieder, da soll ich folgende Seite erstellen:
    <!-insert.php->
    <html>
    <body>
    <?PHP
    if ($button==" OK ") {
    include("db.php");
    mysql_query("INSERT INTO
    cds(titel,interpret)VALUES('$titel','$interpret')");
    mysql_close();
    ?>
    Die Daten wurden eingetragen<br>
    <a href="insert.php">neuer Eintrag</a><br>
    <a href="fetcharr.php">zur Übersicht</a>
    <?PHP
    } else { ?>
    <form method="post" action="insert.php">
    <input type="text" name="interpret" value="interpret"><br>
    <input type="text" name="titel" value="titel"><br>
    <input type="submit" name="button" value=" OK ">
    </form>
    <?PHP
    } ?>
    </body>
    </html>
    Ich habe also die Seite "insert.php" und den Code da reingeknallt und sehe dann auch das Formular wenn ich die Seite aufrufe. Wenn ich allerdings Daten eintrage und absende passiert nix.

    Was ich auch nicht ganz verstehe: was bedeutet die erste Zeile:
    <!-insert.php->
    ??

    So sieht übrigens die Tabelle aus, is doch alles okay mit der oder?:

    Angehängte Dateien
    Zuletzt geändert von fanboyauf3uhr; 19.06.2009, 16:11.

  • #2
    Such mal nach dem Stichwort: register_globals

    Kommentar


    • #3
      Zitat von asp2php Beitrag anzeigen
      Such mal nach dem Stichwort: register_globals
      ich habe "php_flag register_globals Off" in meiner htaccess auf dem server … (?) dürfte doch richtig sein oder?

      Kommentar


      • #4
        Zitat von fanboyauf3uhr Beitrag anzeigen
        ich habe "php_flag register_globals Off" in meiner htaccess auf dem server … (?) dürfte doch richtig sein oder?
        Ja - nur dein Umgang mit den übergebenen Parametern nicht.

        Peter Kropff - Tutorials - PHP / MySQL - register_globals - Überblick
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Hab mir das jetzt alles durchegelesen aber ich komm nicht drauf …

          Kommentar


          • #6
            Auf was kommst du nicht drauf? Besser als im Tut kann man nicht erklären, es sei denn man schreibt dein Code dermaßen um, dass es das Tut sozusagen abbildet, aber darauf kannst du lange warten.

            Wenn du nicht verstehst, dann lese nochmals ... und nochmals ... und ...

            Wenn du immer nicht verstehst, dann lass die Finger von Programmieren, dafür bist du leider nicht geeignet.

            Kommentar


            • #7
              Zitat von fanboyauf3uhr Beitrag anzeigen
              Hab mir das jetzt alles durchegelesen
              Auch die Folgeseiten?

              aber ich komm nicht drauf …
              Peter Kropff - Tutorials - PHP / MySQL - register_globals - "Superglobale" Arrays

              Wenn du das nicht verstehst, dann sehe ich nicht, wie man dir noch helfen könnte.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Zitat von asp2php Beitrag anzeigen
                Wenn du nicht verstehst, dann lese nochmals ... und nochmals ... und ...
                Ja das werde ich dann mal tun.

                Kommentar


                • #9
                  alles klugscheißer hier.. diese foren sind dazu da, um schneller an informationen zu kommen. und nicht um noch stunden lang rumgoogeln zu müssen....
                  ich bin auch noch relativ grün in sachen php. doch ich denke das ist die lösung:


                  bevor die übergebenen daten in die tabelle eingetragen werden können, müssen sie erst in einer variablen hinterlegt sein..
                  $variable = $_POST['variable']

                  mfG

                  Kommentar


                  • #10
                    Zitat von sonderzeichen Beitrag anzeigen
                    alles klugscheißer hier.. diese foren sind dazu da, um schneller an informationen zu kommen. und nicht um noch stunden lang rumgoogeln zu müssen....
                    Niemand muss "stundenlang rumgooglen", wenn ihm direkt Seiten verlinkt werden, auf denen die Thematik extra für Anfänger aufbereitet ist.

                    Und mit Ausdrücken wie "Klugscheisser" hältst du dich bitte künftig zurück.
                    Wenn du glaubst, eine zielführendere Antwort geben zu können, dann mach das, aber ohne solche Ausdrücke.


                    bevor die übergebenen daten in die tabelle eingetragen werden können, müssen sie erst in einer variablen hinterlegt sein..
                    $variable = $_POST['variable']
                    Sie sind bereits in einer Variablen hinterlegt - in diesem Falle in $_POST['variable'].
                    Die Umkopiererei ist vollkommen überflüssig, und verschleiert die Herkunft des Wertes - was dann schlimmstenfalls dazu führt, dass die kontextgerechte Behandlung bei der weiteren Verarbeitung vergessen wird. (Dringlichstes Stichwort hier an dieser Stelle: SQL Injection)
                    I don't believe in rebirth. Actually, I never did in my whole lives.

                    Kommentar


                    • #11
                      wieder was dazu gelernt.. ich habe es halt eben so kennen gelernt, über die "umkopiererei".. aber hast selbstverständlich recht. $_POST['...'] lässt sich auch direkt implementieren...
                      hoffe es nimmt niemand persönlich. leider ist meiner primitiven ausdrucksweise gerade nix besseres eingefallen. klugscheisser ist auch nicht schlimmer als "nochmals.. und nochmals..." und "du bist nicht geeignet..". nahezu jeder kann es erlernen. wie heist es?: aus fehlern lernt man.. was in anderen seiten ausführlich für anfänger beschrieben steht, kann doch auch in einer kurzen spezifischen fehleranalyse erklärt werden..

                      Kommentar


                      • #12
                        Zitat von sonderzeichen Beitrag anzeigen
                        ... was in anderen seiten ausführlich für anfänger beschrieben steht, kann doch auch in einer kurzen spezifischen fehleranalyse erklärt werden..
                        Dann erkläre mir warum man das gleiche zum millionsten Mal erklären muss, wenn eine dafür vorgesehene, verständlich verfasste Seite schon gibt?

                        Wenn einer es nicht vernünftig Grundlagen gelern hat, dann ist auch kein Grund immer wieder ausführlich darauf hinzuweisen. register_globals = on ist seit Jahren als Sicherheitslücke bekannt. Wenn ein Anfänger jetzt immer noch den Fehler macht, dann hat er einfach nicht richtig gelernt. Das Forum ist mit Sicherheit nicht dafür da, um Grundlagenunterricht zu erteilen. Einen Hinweis darauf reicht völlig aus.

                        Kommentar


                        • #13
                          ich bin auch anfänger.. aber man hätte ihm einfach kurz und bündig auf POST und GET parameter hinweisen können.. er hat seinen code aufgelistet. wieso sagt dann nicht einfach wo und wie er ihn einbinden kann???


                          PEACE! please............


                          werd schon ganz klein, määää mamiiii

                          Kommentar


                          • #14
                            wieso sagt dann nicht einfach wo und wie er ihn einbinden kann???
                            Der gute Kropff hat dies bereits sehr gut getan und wurde in diesem Thread sogar bereits zweimal verlinkt. Wenn anschließend noch Probleme autreten, so können diese hier natürlich weiter behandelt werden, Grundlagen sollten aber in einem entsprechenden Tutorial erworben werden.

                            Kommentar

                            Lädt...
                            X