Problem mit POST ... Denkfehler?

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

  • Problem mit POST ... Denkfehler?

    hiho,
    eigentlich ein scheinbar lächerliches problem, jedoch hab ich entweder ne blockade oder ...
    also ich hab einfach nur ein formular mit
    <form methode="post" action="$action">";

    und
    $action = $_SERVER["PHP_SELF"]."?";
    if (!empty($_SERVER["QUERY_STRING"])) {
    $action = $action."".$_SERVER["QUERY_STRING"]."&";
    }
    $action = $action."".$GLOBALS["actionCmd1"]."=answer";

    das steht natürlich alles vor dem "<form .."
    $GLOBALS["actionCmd1"] ist in diesem Fall "todo"

    wenn ich mir $action mit "echo" anschaue, dann steht dort:
    forum.php?tid=1&todo=answer
    also RICHTIG.

    zur vollständigkeit hier der rest der form-felder:
    <textarea name"text" rows="5" class="input" style="width:100%"></textarea>
    und
    <input type="submit" value="Eintragen">

    PROBLEM:
    wenn ich die Daten abschicke hab ich in der URL nur "forum.php?" zu stehen.
    wth soll das?
    Ich hab nu schonmal ne Nacht drüber geschlafen, weil es mir einfach lächerlich erscheint ... nur ich find auch heute den Fehler nicht selbst.

    Info zu apache2 und php-konfig:
    Installationskonfiguration! (bis auf document_root )

  • #2
    Bei Post wird nichts in die url übertragen.
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      es geht um das "$action"
      das würde ich schon gern in der url sehen.

      das der rest nicht in der url stehen wird ist schon klar.

      Kommentar


      • #4
        wie wärs mit action="<?php echo $action;?>" ???
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          ich hab nochwas gesehen ....

          bei <textarea fehlt eine "=" bei name ... wenn ich das allerdings setze, sieht die url so aus:
          "forum.php?text=" (wenn kein text eingegeben)
          was ich noch merkwürdiger finde.

          also das problem (blockade) bleibt bestehen, danke für die hilfe.

          Kommentar


          • #6
            zu früh ...

            nein, dass ganze steht schon in "echo" also kein <? echo ... ?>

            Kommentar


            • #7
              wenn das in echo ' mit einfachen ' steht dann solltest Du wissen dass dann keine Werte von Variablen verwertet werden.
              Beantworte nie Threads mit mehr als 15 followups...
              Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

              Kommentar


              • #8
                poste bitte ma was du da wirklich stehen hast, das was du geschrieben hast stimmt nämlich hinten und vorne nich

                <form methode="post" action="$action">"
                wenn ich mir da ein echo drumrum vorstelle, dann müsste es ein echo ' sein, da du die anführungszeichen nich escaped hast. dann wird aber afaik auch nich der wert der variablen $action ausgegeben sondern einfach $action als text
                echo " kann es nich sein, da du dann parse erros kriegen müsstest

                dass dein url leer is glaub ich dir auchnoch noch so ganz, da es richtig method="post" heißt und nich methode. wenn du für method nix angibst isses aber get (oder ich müsste mich bös täuschen). wenn es get is, sollte dein url aber zugekleister sein mit allen werten die du im formular eingetragen hast
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  ich nutze keine einfachen ' mag zwar einfacher sein, aber dabei unterlaufen mir eifach zu viele flüchtigkeitsfehler.

                  also hier nochmal das ganze im original:

                  $action = $_SERVER["PHP_SELF"]."?";
                  if (!empty($_SERVER["QUERY_STRING"])) {
                  $action = $action."".$_SERVER["QUERY_STRING"]."&";
                  }
                  $action = $action."".$GLOBALS["actionCmd1"]."=answer";

                  echo "
                  <form methode=\"post\" action=\"$action\">
                  <textarea name=\"text\" rows=\"5\" class=\"input\" style=\"width:100%\"></textarea>
                  <input type=\"submit\" value=\"Eintragen\">
                  </form>";

                  und
                  $GLOBALS["actionCmd1"] = "todo";

                  Kommentar


                  • #10
                    siehe mrhappiness' antwort
                    Ach un gewöhn Dir an hier den code zu posten den Du verwendest. Oder sind das intelektuelle Fragen bei denen jeder weiss dass Du
                    $action=\"$action\" meinst
                    wenn Du zB action ="$action" schreibst
                    etc.

                    Bringst Du beim kaputten Kühlschrank auch Deinen Rechner zum Fleischer?
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      DA HABEN WIR ES.
                      Manchmal sind es die einfachsten dinge.

                      method statt methode

                      sorry, aber manchmal sieht man den wald vor lauter bäumen nicht mehr und ich hätte da bestimmt auch nächste woche noch nicht hingeschaut.

                      thx und naja ihr wisst schon ...

                      Kommentar


                      • #12
                        EDIT:
                        siehste wohl, nich verzagen; kluge leute fragen

                        reg ich mich auf oder reg ich mich nich auf?

                        Zuletzt geändert von mrhappiness; 18.03.2003, 14:26.
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          ... und ich hab den backslash nicht weggenommen ...
                          das war genauso copy/paste wie beim letzten mal.

                          warum er es beim ersten mal weggelassen hat, weiß ich nicht, vielleicht hab ich da erst auf vorschau und dann auf eintragen geklickt (oder andersrum.

                          und tut nicht so genervt, das seid ihr doch gar nicht, sonst würdet ihr nicht antworten

                          Kommentar

                          Lädt...
                          X