mein phpskript schreibt net in mysql....

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

  • mein phpskript schreibt net in mysql....

    Hi,
    mein problem:
    ich hab hier ein script geschreibselt, welches eigentlich einige werte in eine sql datenbank schreiben soll, das tut es aber nicht...

    vllt findet hier ja jemand einen syntaxfehler oder kann mir sagen was ich falsch gemacht habe

    greetz
    eMs

    PHP Code:

    PHP-Code:
    $aktdatum date("d.m.Y");   // aktuelles datum
    $aktzeit date("H:m:s");    // aktuelle Zeit
    $zeitstempel time();       // timestamp

    print "
          <form name=\"writenewsform\" method=\"post\" action=\"writenews.php\">
           <table border = 1 width =\"690\">
            <tr>
             <td width=\"500px\" align=\"left\"><input type=\"Text\" name=\"newtopic\" size=\"79\"></td>
             <td align=\"right\" >
    $aktdatum || $aktzeit</td>
            </tr>
            <tr>
             <td colspan=\"2\"><textarea name=\"newnews\" cols=\"80\" rows=\"3\" wrap=\"soft\"></textarea></td>

            </tr>
            <tr>
             <td><input name=\"submit\" type=\"submit\" value=\"Eintragen\" class=\"submit\"></td>
            </tr>
           </table>
          </form>
        <br><br>
    "
    ;
    if (isset(
    $submit)) {
    $query "INSERT INTO '$table2' (id,topic,datum,news,zeit,zeitstempel) VALUE ('','$newtopic','$aktdatum','$newnews','$aktzeit','$zeitstempel')";
    mysql_query($query,$db_conn);

    p.s. der mysql_connect stimmt, das hab ich überprüft

  • #2
    Re: mein phpskript schreibt net in mysql....

    Original geschrieben von Eat_my_Shortz
    p.s. der mysql_connect stimmt, das hab ich überprüft
    das kann ja alles sein. aber wo bitte ist dein mysql_error() abgeblieben?

    PHP-Code:
    $res mysql_query($query,$db_conn) or die(mysql_error()); 
    *VERSCHIEB* nach sql


    EDIT:
    ausserdem stellt sich die frage, ob dein script überhaupt in das if() reingeht. $submit -> mache mal lieber $_POST['submit']
    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
      suche mal nach register global (in der Forum suche).
      if (isset($submit)) {
      PHP-Code:
      if (isset($_POST['submit'])) { 
      Offe

      Kommentar


      • #4
        danke, hab echt nen syntaxfehler, weiß aber nciht wieso.....
        das kommt als mysql error messege:

        You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''news_db' (id,topic,datum,news,zeit,zeitstempel) VALUES ('12','

        leider hab ich keine ahnung was en falsch sein soll......

        Kommentar


        • #5
          gib mal
          PHP-Code:
          print_r($_POST); 
          aus.

          Du mußt natürlich alle Variablen die mit post übergeben wurden als $_POST['variable'] schreiben. Bsp.: $_POST['newtopic'] statt $newtopic.

          Nochmaliger Hinweis auf Suche nach register global.

          Offe

          Kommentar


          • #6
            mysql_escape_string() kann auch helfen. ich weiss ja nicht, was in den vars drin ist.
            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


            • #7
              sieht so aus als kommt er nicht ganz mit den andren variablen klar.....

              das ich die variablen "posten" müsste hätte ich selbst wissen müssen....



              print_r($_POST); Ausgabe:
              Array ( [newtopic] => as [newnews] => sa [submit] => Eintragen )

              sa und as entsprechen den testbuchstaben welche ich eingegeben habe


              wenn ich die variablen in das if() schreibe gibt das auch kein neues ergebnis....

              eMs

              EDIT:
              in den vars $newtopic und $newnews stehen eingetragene werte,
              die ausgabe stimmt auch, nur bekomm ich das ganze nicht in meine datenbank....

              Zuletzt geändert von Eat_my_Shortz; 02.03.2004, 20:45.

              Kommentar


              • #8
                Versuch mal:
                PHP-Code:
                <?php
                $aktdatum 
                date("d.m.Y");   // aktuelles datum
                $aktzeit date("H:m:s");    // aktuelle Zeit
                $zeitstempel time();       // timestamp
                ?>
                      <form name=\"writenewsform\" method=\"post\" action=\"writenews.php\">
                       <table border = 1 width =\"690\">
                        <tr>
                         <td width=\"500px\" align=\"left\"><input type=\"Text\" name=\"newtopic\" size=\"79\"></td>
                         <td align=\"right\" >$aktdatum || $aktzeit</td>
                        </tr>
                        <tr>
                         <td colspan=\"2\"><textarea name=\"newnews\" cols=\"80\" rows=\"3\" wrap=\"soft\"></textarea></td>
                        </tr>
                        <tr>
                         <td><input name=\"submit\" type=\"submit\" value=\"Eintragen\" class=\"submit\"></td>
                        </tr>
                       </table>
                      </form>
                    <br><br>
                <?php
                if (isset($_POST['submit'])) {
                $query "INSERT INTO '$table2' (id,topic,datum,news,zeit,zeitstempel) 
                VALUES ('','
                $_POST['newtopic']','$aktdatum','$_POST['newnews']','$aktzeit','$zeitstempel')";
                mysql_query($query,$db_conn);
                }
                ?>
                EDIT:
                Striche rausgemacht, du hast VALUE statt VALUES geschrieben


                Offe
                Zuletzt geändert von Offe1; 02.03.2004, 20:54.

                Kommentar


                • #9
                  im query verursachen die $_POST[] variablen fehler aber ansonsten is alles wie vorher.....

                  ich ahb auch schon die andren varialen wieder ins if() mit eingebracht
                  aber das wird alles nicht in die db eingetragen.....

                  Kommentar


                  • #10
                    du hast VALUE statt VALUES geschrieben.

                    Offe

                    Kommentar


                    • #11
                      du hast VALUE statt VALUES geschrieben.

                      PHP-Code:
                      VALUES ('','" . $_POST['newtopic'] . "','$aktdatum','" . $_POST['newnews'] . "','$aktzeit','$zeitstempel')"; 
                      Offe

                      Kommentar


                      • #12
                        :-/
                        immernoch der selbe mysql error.....

                        aber nun schreibt er mir schon mehr variablen rein, danke

                        mein if() block sieht nun so aus:
                        PHP-Code:
                        if (isset($_POST['submit'])) {

                        $aktdatum date("d.m.Y");   // aktuelles datum
                        $aktzeit date("H:m:s");    // aktuelle Zeit
                        $zeitstempel time();       // timestamp

                        $query "INSERT INTO '$table2' (topic,datum,news,zeit,zeitstempel)
                         VALUES ('" 
                        $_POST['newtopic'] . "','$aktdatum','" $_POST['newnews'] . "','$aktzeit','$zeitstempel')";
                        mysql_query($query,$db_conn)or die(mysql_error());


                        das is die momentane fehlermeldung:

                        You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''news_db' (topic,datum,news,zeit,zeitstempel) VALUES ('sa','02.

                        Kommentar


                        • #13
                          poste mal das Ergebnis von
                          PHP-Code:
                          echo $query
                          Offe

                          Kommentar


                          • #14
                            in dem $_POST['newnews'], der nicht eingetragen wird, sind nicht zufällig ' oder " enthalten?
                            ... dann wäre mysql_escape_string() dein freund ... allerdings solltest du vorher (für den serverbetrieb)
                            abfragen, ob magic_quotes on oder off sind, zB:
                            PHP-Code:
                            if(!get_magic_quotes_gpc())
                                 
                            $newstext mysql_escape_string($_POST['newnews']); 
                            Kissolino.com

                            Kommentar


                            • #15
                              also um ehrlich zu sein, cih seh keinen fehler....

                              ergebnis von echo $query;
                              INSERT INTO 'news_db' (topic,datum,news,zeit,zeitstempel) VALUES ('sa','02.03.2004','as','21:03:28','1078260448')

                              Kommentar

                              Lädt...
                              X