Homer: Kleines Problem mit einem Script

Ich versuche gerade ein kleines Script zu machen, wichtig ist dieser Teil:
       include("config.php");
       $text = htmlspecialchars($text, ENT_QUOTES);
       $ip = getenv("REMOTE_ADDR");
       $timestamp = time();
       mysql_query("insert into think value($text)");
       echo "Eingetragen...<br><br>";

er schreibt nämlich nichts in die db, woran liegt das ?

  1. Hi,

    Ich versuche gerade ein kleines Script zu machen, wichtig ist dieser Teil:
           include("config.php");
           $text = htmlspecialchars($text, ENT_QUOTES);
           $ip = getenv("REMOTE_ADDR");
           $timestamp = time();
           mysql_query("insert into think value($text)");
           echo "Eingetragen...<br><br>";

    er schreibt nämlich nichts in die db, woran liegt das ?

    Weil wahrscheinlich die Syntax falsch ist.
    Wie wärs mit einer Fehlermeldung? Was soll in die DB? Woher kommen die Variablen? Wo öffnest Du eine connction zur Datenbank?

    Ich vermute übrigen es liegt an deiner insert-Anweisung
    sollte die nichtin etwa so aussehen

    insert into think(spaltenname1) value('".$text."')

    ciao
    romy

    --
    DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
    ->Alles ist gut wenn es aus Schokolade ist
    1. Ich hab das jetzt so geändert (mal der ganze Code) aber es geht trotzdem noch nicht, mysql connect ist übrigens in der config.php

      <?php
           if(file_exists("install.php")){echo "Bitte install.php loeschen!"; die();}
           if(isset($_GET['save']) && $_GET['save'] == "true")
           {
            $ipdatei = "guestbook_lastip.txt";
            $fp = fopen($ipdatei, "r");
            $str = fread($fp, filesize($ipdatei));
            fclose ($fp);

      if(!$_POST['text'])
            {
             echo "<b>Du musst einen Text eingeben</b><br><br>";
            }
            elseif($str == getenv("REMOTE_ADDR"))
            {
            echo "<b>Fehler: IP Sperre</b><br><br>";
            }
            else
            {
             $fp = fopen ("guestbook_lastip.txt","w");
             fwrite($fp, getenv("REMOTE_ADDR"));
             fclose($fp);

      include("config.php");
             $text = htmlspecialchars($text, ENT_QUOTES);
             $ip = getenv("REMOTE_ADDR");
             $timestamp = time();
             mysql_query("insert into think value('".$text."')");
             echo "Eingetragen...<br><br>";
            }
           }
           ?>

      1. Hi,

        mysql_query("insert into think value('".$text."')");
               echo "Eingetragen...<br><br>";

        hinter dem Tabellennamen "think" muss in Klammern stehen in welche Spalte Du es einfügen willst! Hats Du mehrere, dann durch Kommata getrennt.

        insert into think(name) values('value')

        ciao
        romy

        --
        DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
        ->Alles ist gut wenn es aus Schokolade ist
        1. Problem ist gelöst, danke für eure Hilfe. :)

          Hi,

          mysql_query("insert into think value('".$text."')");
                 echo "Eingetragen...<br><br>";
          hinter dem Tabellennamen "think" muss in Klammern stehen in welche Spalte Du es einfügen willst! Hats Du mehrere, dann durch Kommata getrennt.

          insert into think(name) values('value')

          ciao
          romy

  2. Hallo Homer, <- </faq/#Q-05a>

    include("config.php");

    steht da was wichtiges drin?

    $ip = getenv("REMOTE_ADDR");

    mhh... was soll das sein? meinst du vielleicht $_SERVER["REMOTE_ADDR"]?

    mysql_query("insert into think value($text)");

    mhh... eher so:
    $query = "INSERT INTO think VALUE ('$$text')";
    $result = mysql_query ($query)
        or die ("Ungültige Abfrage: " . mysql_error());
    ... oder so ähnlich zumindest

    er schreibt nämlich nichts in die db, woran liegt das ?

    keine Ahnung. Gibt es eine Fehlermeldung? wo steht mysql_connect(...)?

    Grüße aus Nürnberg
    Tobias

  3. mysql_query("insert into think value($text)");

    Hi!

    hab mich jetzt nicht näher mit dem Skript befaßt; aber muß es rein mysql-technisch nicht heißen:
    "[...]insert into think values([...]"?

    also nicht "value" sondern "values"?

    Gruß,
    Marco