Verweise auf 2 unterschiedliche seiten mit post

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

  • Verweise auf 2 unterschiedliche seiten mit post

    Hey Leute ich hab da mal wieder ein problem ich weiß auch nicht ob mein
    Betreff oben dafür so richtig ist weil ich davon voll keine Ahnung habe! und
    zwar hab ich folgendes problem:
    Ich habe eine Seite (submit.php) wo man verschieden sachen eintragen
    kann wie name usw. und diese dann mit einem button abschicken kann
    das funktioniert auch alles so weit wunderbar nur will ich jetzt aber noch
    einen 2ten button haben der auch eine action mit post ausführt für eine
    vorschau seite die sich beim klick dann als popup öfnet... kann mir jemand
    sagen wie ich das hinbekomme??

    Der Code vom button für die vorschau seite sieht so aus:
    Code:
    <input name="button5" type="button" id="button2" onClick="window.open
    ('vorschau.php?
    NAME=name&email=EMAIL&NAME=name&EMAIL=email', 'moresmilies', 'widt
    h=500,height=200,resizable=yes,scrollbars=yes');" value="Vorschau" />
    und der code zum absenden so:
    Code:
    <input name="entry" type="submit" accesskey="S" tabindex="3" value="Eintragen" />
    ganz oben im qelltext steht dann noch folgendes:
    Code:
    <form name="eingabe" action="gb.php" method="post">
    <input type="hidden" name="service" value="entry">
    <input type="hidden" name="text" value="" />
    mein problem hierbei ist das die durch diesen code die funktion post immer auf gb.php verweist. aber sie soll ein mal auf gb.php verweisen und ein mal auf vorschau.php kann mir da vll jemand helfen wie ich das hinbekomme??
    Danke Schon mal...
    Zuletzt geändert von DiamondDog; 04.07.2006, 12:27.

  • #2
    Re: Verweise auf 2 unterschiedliche seiten mit post

    Regeln lesen, Code umbrechen, danke.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      sorry hatte ich vergessen.. habs jetzt geändert..

      Kommentar


      • #4
        Warum drei verschiedene Seiten, mach doch 'ne Mehrzweckseite und versende das Formular 'an sich selbst',
        PHP-Code:
        action="<? $_SERVER['PHP_SELF'] ?>"
        und am Anfang der Seite überprüfts Du, über welchen Button gesendet wurde. Danach gestaltest Du Deine Ausgabe.
        EDIT:
        [COLOR=darkblue]Is dann natürlich ne PHP-Lösung[/COLOR]
        Zuletzt geändert von gruenspan; 04.07.2006, 12:49.

        Kommentar


        • #5
          sind ja so gesehn keine 3 Seiten sondern nur 3 auf der einen wird der eintrag später nur ausgegeben... sogesehn hab ich nur die eintrags seite und die vorschauseite und ich kenn mich leider nicht gut genug mit php aus um das was du sagtest hinzubekommen..

          Edit:
          hab gerade mal das net durchsucht und folgendes gefunden nur leider funktionieren es damit auch nicht so wie ich es gerne hätte...
          Code:
          <script language="JavaScript">
          <!--
          function chgFormAction(aktion) {
             if(aktion == "hierhin"){
                   document.forms[0].action="XYZ.abc";
                   document.forms[0].target="_blank";
                   document.forms[0].submit();
          
             }else{
             	if(aktion == "dorthin"){
          	         document.forms[0].action="ABC.xyz";
          	         document.forms[0].target="";
          	         document.forms[0].submit();
                   }
             }
             return;
          }
          //-->
          </script>
          
          <form method="POST">
          <input type="Text" name="" value="" size="" maxlength="">
          <input type="button" name="" value="mache dies" onclick="chgFormAction
          ('hierhin')">
          <input type="button" name="" value="mache das" onclick="chgFormAction
          ('dorthin')">
          </form>
          Zuletzt geändert von DiamondDog; 04.07.2006, 13:30.

          Kommentar


          • #6
            Javascript eignet sich dafür aber nur eingeschränkt. Du müsstest die Werte aus den Formularfeldern auslesen, und woanders (Popup oder selbe Seite) wieder ausgeben, vermutlich noch mit HTML-Code drumherum.

            Wenn die Formulardaten irgendwo verarbeitet/gespeichert werden, dann doch wohl vermutlich serverseitig?
            Dann solltest du auch eine serverseitige Technik nutzen, um die Vorschau zu realisieren.
            Affenformular ist ein gutes Stichwort.

            gruß,
            wahsaga

            Quelle
            Hab ma bisschen gesucht und obiges gefunden. Wenn Du in PHP nicht so fit bist, unterstütze ich Dich gern ein bisschen, um das Problem zu lösen.
            Affenformular
            Zuletzt geändert von gruenspan; 04.07.2006, 16:05.

            Kommentar


            • #7
              ok ich hab mir die seiten jetzt mal angeschaut und durchgelesen.. also den sinn habe ich soweit auf jeden fall verstanden nur leider hab keine ahnung wie ich dieses umsetze... zu hilfe verweise ich mal auf die seite um die es geht dann könnt ihr euch auch mal den qelltext an sehn wenn das helfen sollte: Seite

              Kommentar


              • #8
                ich nehme an, das die daten für Dein Gastebuch aus einer Datenbank kommen. Bitte bentutze:
                PHP-Code:
                htmlspecialchars(): 
                bevor Du die Einträge in die Datenbank schreibst. ( siehe letzten zwei Einträge in deinem Gästebuch )

                Um abzufragen welcher Button gedrückt wurde kannst Du folgendermaße vorgehen.
                PHP-Code:
                <?php
                if(isset($_POST['vorschau'])){
                //zeige Vorschau an
                }
                if(isset(
                $_POST['eintragen'])){
                //in die Datenbank eintragen
                }
                ?>
                <form method="post" action="<? $_SERVER['PHP_SELF'] ?>">
                 <input type="text" name="wert">
                 <input type="submit" name="vorschau" value="vorschau">
                 <input type="submit" name="eintragen" value="eintragen">
                </form>

                Kommentar


                • #9
                  oh leider hab ich die einträge gelöscht *peinlichsei* weil ich immer n paar leute habe die ein wenig dumme sachen posten und da dort nur rrrrr stand dachte ich das wäre mal wieder so ein schwach sin..
                  aber mal zu dem PHP script kann man das nciht auch so schreiben das ich bei:

                  Code:
                  <form method="post" action=
                  sage das er als action entweder die seite vorschau.php oder die seite gb.php öfnet beim klick auf entweder den oder dehn button das müste doch möglich sein oder nicht?? und dann übergebe ich wenn es möglich ist die daten der vorschau seite in etwas so:
                  Code:
                  vorschau.php?NAME=name&email=EMAIL&NAME=name&EMAIL=email
                  und rufe diese dann auf der vorschau seite wieder so auf:
                  Code:
                  <form>
                    <p>Name: 
                      <input name="Name" type="text" value="<?php echo$_POST['NAME']; ?>">
                  </form>
                  würde sowas in der art nicht funtionieren..? sorry ab und zu is alles ein wenig schwer zu verstehn also nich böse sein wenn ich etwas mal nicht auf anhieb verstehe..

                  Kommentar


                  • #10
                    kann man das nciht auch so schreiben das ich bei:
                    Code:
                        <form method="post" action=
                    sage das er als action entweder die seite vorschau.php oder die seite gb.php öfnet
                    dann mach halt
                    Code:
                    action="vorschau.php"
                    Code:
                    vorschau.php?NAME=name&email=EMAIL&NAME=name&EMAIL=email
                    warum willst du deine Daten zusätzlich in der URL übertragen, wenn Du schon die Methode post gewählt hast.

                    Und vergiss nicht das htmlspecialchars(). Schau doch einfach mal den folgenden Eintrag von mir in deinem Gästebuch an.

                    Zuletzt geändert von gruenspan; 04.07.2006, 18:07.

                    Kommentar


                    • #11
                      Original geschrieben von gruenspan
                      Bitte bentutze: htmlspecialchars() bevor Du die Einträge in die Datenbank schreibst.
                      Bitte lass das, und bitte wende es bei der Ausgabe an.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        Hast natürlich recht wahsaga. *selbstohrfeig*

                        Kommentar


                        • #13
                          aber das mach ich doch eigendlich schon wenn ich das mit dem htmlspecialchars() richtig verstanden habe aber irgend wie wenn ich das nciht verstanden habe steh ich gerade völlig auf dem schlauch bin wie gesagt in der sache scripte schreiben und so noch nciht ganz so erfahren.. und bevor jetzt jemand was sagt ich will ja nicht das ihr mir meine scripte schreibt oder so... aber ich versteh echt gerade nur noch bahnhof wie mir das alles weiter helfen soll einfach nur eine vorschauseite zu basteln...

                          Kommentar


                          • #14
                            Dein Formular nutzt Die Methode post. Was bedeuted, das es die
                            eingetragenen Werte an die Seite sendet, die unter action="URL" angegeben ist. In dieser Seite kannst Du dann Deine Werte weiterverarbeiten.

                            z.B. vorschau.php:
                            PHP-Code:
                            echo $_POST['wert']; 
                            z.B. eintragen.php

                            PHP-Code:
                            mysql_query("insert into tabelle set spalte='".$_POST['wert']."' "); 
                            Zuletzt geändert von gruenspan; 04.07.2006, 21:54.

                            Kommentar

                            Lädt...
                            X