wieso geht dieser code nicht ??

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

  • wieso geht dieser code nicht ??

    ich habe folgenden code geschrieben
    es soll ein kommentarscript werden

    die anzeige zeilen erspare ich euch mal ich poste mal nur die zeilen die relevant sind. also die input felder und die insert abfrage.

    währe nett wenn mal jemand gucken könnte warum der hier keine fehlermeldung auspuckt bzw keinen datensatz in die datenbank schreibt

    PHP-Code:
    print "<form action=\"tacktikcomm.php?commid=$commid\" method=\"post\" name=\"beitrag3\">
    <table width=90%>
    <INPUT TYPE=\"hidden\" NAME=\"filled\" VALUE=\"1\">
    <tr>
        <td>name</td>
        <td><input type=\"text\" name=\"schreiber\" size=\"40\" maxlength=\"40\"></td>
    </tr>
    <tr>
    <td>text</td>
    <td><textarea cols=\"70\" rows=\"20\" name=\"text\"></textarea></td>
    </tr>
    <tr>
        <td>name</td>
        <td><input type=\"submit\" name=\"action\" value=\"Absenden\">&nbsp;<input type=\"reset\" name=\"res\" value=\"Reset\"></td>
    </tr>
    </form>
    </table>"
    ;



    if (
    $action=="Absenden"
        { 

    $schreiber=addslashes($schreiber);
    $text=addslashes($text);
    $errmsg "";
        
    //echo"das ist ein test wenn der testmisslingt dann dreh ich durch";

    if (empty($schreiber))
                {
                    
    $errmsg .="<br><center>Name und Kommentar eingeben !<br></center>";
                }

    if (empty(
    $text))
                {
                    
    $errmsg .="<br><li>Hast wohl deinen Namen vergessen !!\n";
                    
                }



    if (empty(
    $errmsg))
                {
    $query "INSERT INTO tacktikcomm VALUES ('', '$commid', '$schreiber', '$text', '$datum')";
    $ergebnis  mysql_query($query$conn);
                }
            else
                {
            print <<<EOQ
    <p>
    <font color=red>
    <b>
    $errmsg
    Bitte erneut die daten eingeben. Thx
    </p>
    EOQ;
                
                }
        } 
    vielen dank im vorraus denn ich werde noch verrückt mit diesen problem, denn ich bin mir keines fehler bewusst
    visit my site

  • #2
    na dann benutzte mal lieber

    $HTTP_POST_VARS['action'] oder $_POST['action'] statt $action

    und das bei allen anderen geposteten Variablen auch
    TBT

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


    PHP 2 AllPatrizier II Browsergame

    Kommentar


    • #3
      hae

      ich hab es mal mit deinem vorschlag versucht aber auch das bringt keine punkte

      if ($action=="Absenden")
      {
      also ich habe diese variable ersetzt wo wie du sagtest aber es geschiet nichts

      ich hab das gefuehl als wenn er gar nicht in die if schleife reingeht denn er sollte ja eine felhlermeldung auspucken wenn ich auf absenden drücke blos er macht nix und das is eben das komische. das script flasht einmal und das wars. woar n kann das blos liegen das kann doch nich so kompliziert sein ( fuer mich schon )
      visit my site

      Kommentar


      • #4
        ich hab das gefuehl als wenn er gar nicht in die if schleife reingeht
        wieso prüfst du das denn nicht einfach ?????

        PHP-Code:
        if ($_POST[action]=="Absenden"
            { 
        echo 
        "ich bin drin";

        ... 
        ps:hast du das mysql_connect rausgeschnitten ?
        Zuletzt geändert von Campus; 27.09.2002, 00:51.
        meine Projekte bestaunen: http://www.kleiza.de

        Kommentar


        • #5
          Mysql-Handbuch:

          Wenn Sie keine Spaltenliste für INSERT ... VALUES oder INSERT ... SELECT angeben, müssen für alle Spalten Werte in der VALUES()-Liste oder vom SELECT bereit stehen. Wenn Sie die Reihenfolge der Tabellenspalten nicht kennen, benutzen Sie DESCRIBE tabelle, um sie herauszufinden.

          ansonsten

          INSERT INTO table (spalte1, spalte2, spalte3) VALUES ('$wert1', '$wert2', '$wert3')

          mfg

          PS. Ob dein value ' ' gefressen wird ist auch noch eine Frage. Normalerweise gibt man meines Wissens NULL an, wenn es ein leerer Eintrag sein soll.
          Zuletzt geändert von CHnuschti; 27.09.2002, 01:56.

          Kommentar


          • #6
            versuchs mal so:

            <?php
            if ($action=="Absenden")
            {

            $schreiber=addslashes($schreiber);
            $text=addslashes($text);
            $errmsg = "";
            //echo"das ist ein test wenn der testmisslingt dann dreh ich durch";

            if (empty($schreiber))
            {
            $errmsg .="<br><center>Name und Kommentar eingeben !<br></center>";

            }

            if (empty($text))
            {
            $errmsg .="<br><li>Hast wohl deinen Namen vergessen !!\n";

            }



            if (empty($errmsg))
            {
            $query = "INSERT INTO tacktikcomm VALUES ('', '$commid', '$schreiber', '$text', '$datum')";
            $ergebnis = mysql_query($query, $conn);
            }
            else
            {
            print <<<EOQ
            <p>
            <font color=red>
            <b>
            $errmsg
            Bitte erneut die daten eingeben. Thx
            </p>
            EOQ;

            }
            }

            print "<form action=\" $PHP_SELF \" method=\"post\" name=\"beitrag3\">

            <table width=90%>
            <INPUT TYPE=\"hidden\" NAME=\"filled\" VALUE=\"1\">
            <tr>
            <td>name</td>
            <td><input type=\"text\" name=\"schreiber\" size=\"40\" maxlength=\"40\"></td>
            </tr>
            <tr>
            <td>text</td>
            <td><textarea cols=\"70\" rows=\"20\" name=\"text\"></textarea></td>
            </tr>
            <tr>
            <td>name</td>
            <td><input type=\"submit\" name=\"action\" value=\"Absenden\">&nbsp;<input type=\"reset\" name=\"res\" value=\"Reset\"></td>
            </tr>
            </form>
            </table>";
            ?>

            und wenn alles in Datenbank dann mit include wo du hinwillst

            gruß

            Kommentar


            • #7
              also ich habe das mit der abfrage ( ifschleifen test ) mal ausprobiert

              er geht nicht in die schleife !! denn wenn er es tun wuerde muesste er mir auch eine fehlermeldung ausgeben


              die insert abfrage funktioniert auch so perfeckt ( laut meines Proffessors fuer Datenbanken ) man muss halt nur die reihenfolge beachten.

              das mit dem includieren muss ich mal ausprobieren.

              blos wieso geht der nicht in die schleife verzweifel
              visit my site

              Kommentar


              • #8
                Eine Anmerkung:
                benutze nicht den Absende Button als $HTTP_POST_VARS[action] sondern nimm ein hidden feld, der Absende button wird nur übertragen, wenn er auch geklickd wird.
                Beantworte nie Threads mit mehr als 15 followups...
                Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                Kommentar


                • #9
                  wie wuerde das denn ausehen ich bin noch am lernen deshalb entschuldige diese frage bin halt noch ein php anfänger.

                  würde mich freuen wenn du noch mal schauen könntest
                  visit my site

                  Kommentar


                  • #10
                    PHP-Code:
                    print "<form action=\"tacktikcomm.php?commid=$commid\" method=\"post\" name=\"beitrag3\">
                    <table width=90%>
                    <INPUT TYPE=\"hidden\" NAME=\"filled\" VALUE=\"1\">
                    <tr>
                        <td>name</td>
                        <td><input type=\"text\" name=\"schreiber\" size=\"40\" maxlength=\"40\"></td>
                    </tr>
                    <tr>
                    <td>text</td>
                    <td><textarea cols=\"70\" rows=\"20\" name=\"text\"></textarea></td>
                    </tr>
                    <tr>
                        <td>name</td>
                    <input type=\"hidden\" name=\"action\" value=\"Absenden\">
                        <td><input type=\"submit\" value=\"Absenden\">&nbsp;<input type=\"reset\" name=\"res\" value=\"Reset\"></td>
                    </tr>
                    </form>
                    </table>"
                    ;

                    if (
                    $HTTP_POST_VARS[action]=="Absenden" or $_POST[action]=="Absenden"


                    ... 
                    meine Projekte bestaunen: http://www.kleiza.de

                    Kommentar


                    • #11
                      genau das wars ich bedanke mich recht herzlich fuer die hilfe
                      visit my site

                      Kommentar

                      Lädt...
                      X