Event-Handler

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

  • Event-Handler

    Hi zusammen

    Gibt es eine Möglichkeit in einem <input type"button"> einen Event-Handler z setzten, wie bei Java-Script, für php eine Funktion auszuführen?

    Oder wie kann ich beim Kicken (onClick) eine PHP Funktion ausführen?

    Danke René

  • #2
    nein, nur über js -> seite neu laden (oder so).

    Kommentar


    • #3
      OK, neue Strategie!

      Wie kann ich mit php eine Seite neu laden? (Oder geht das auch nur mit Java-Script)

      Also dass ich anstelle von include(""); nicht die Seite in die Seite lade sondern das ich gänzlich eine neue Seite lade.

      Thx René

      Kommentar


      • #4
        was beim client geschieht, kann js beeinflußen. php ist nur beim neustart der seite wieder dran, weil server-sided.

        Kommentar


        • #5
          Ales klar!

          Nur will ich Java-Script umgehen, da es ausgeschaltet werden kann.

          Ich habe eine Formularprüfung welche auch einwandfrei funktioniert, solange sich alles im selben File abspielt. Nun versuche ich ein mehrseitiges Form mit der selben techik - ohne JS!

          PHP-Code:
          <form action="?type=send" name="Formkontakt" method="POST">
          <?
          function check($start,$formdaten)
          {
          $nachname = $_POST['nachname'];

          ?>
          <table border="0" cellspacing="0" cellpadding="0">
          <?
          if ($start == "secend")
          {
          ?>
          <tr>
              <td valign="top" class="content"><font color="#ff9c00">
          <b>Bitte füllen Sie alle orange-markieren * Felder aus.</b></td>
          </tr>
          <tr>
              <td valign="top" ><img border="0" src="images/spacer.gif" width="3" height="5"></td>
          </tr>
          <?
          }
          echo<<<ABC
          <tr>
              <td>
          if ($nachname == "" and $start != "first")
          {
          echo<<<ABC
          <input type="text" name="nachname" value="$nachname" 
          style="width:199; background-color:#ff9c00"  >
          ABC;
          }
          else
          {
          echo<<<ABC
          <input type="text" name="nachname" value="$nachname" 
          style="width:199"  >
          ABC;
          }
          echo<<<ABC
              </td>
          </tr>
          </table>
          </form>
          ABC;
          }

          if(!isset($type))
          {
          check(first,$formdaten);
          }

          if ($type == ''send)
          {
          $nachname = $_POST['nachname'];

          if ($nachname == "") 
              {
              $formdaten = $_POST;
              check(secend,$formdaten);
              }
              else
              {
              Hier werden die Daten eingetragen.
              }
          ?>
          Hier das Prinzip. Funktioniert prima und ohne zusätzliche plugins oder der gleichen, also systemunabhängig.

          Kommentar


          • #6
            die Eingabe von vorangegangenen Seiten kannst du:
            - entweder per Session
            - oder per hiddenFeldern
            mitschleifen.

            Das Thema wurde auch schon mehrmals behandeln; such mal im Forum

            Kommentar


            • #7
              Ich glaube du hast mich nicht recht verstanden!

              Um die Felder zu schlaufen habe ich keine Probleme. Hidden oder besser http://www.php-resource.de/tutorials/read/7/1/.

              Mein Problem ist ein anderes! Lies doch meine Beiträge genau durch!

              Kommentar


              • #8
                Hallo,

                Lies doch meine Beiträge genau durch!
                hab ich jetzt mal gemacht und ehrlich gesagt kann ich daraus nicht erkennen wo nun dein Problem liegt, also beschreib vielleicht nochmal kurz was du überhaupt willst und was daran nicht funktioniert.

                Gruss
                Quetschi
                Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
                Schön - etwas Geschichte kann ja nicht schaden.
                Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

                Kommentar


                • #9
                  Ein Problem gibt es keines.

                  Ich wollte nur wissen wie ich es fertig bringe, eine Seite neu zu laden mit php() ohne JS. Also aus dem Script heraus den Seite mit einer neuen Seite ersetzten.

                  Kommentar


                  • #10
                    Ich wollte nur wissen wie ich es fertig bringe, eine Seite neu zu laden mit php() ohne JS.
                    mit einem passenden header. so wird aber der benutzer wenig tun können.

                    mache dir den unterschied zwischen serverseitigen und clientseitigen abläufen klar.

                    Kommentar


                    • #11
                      Der Benutzer braucht nur die Daten ins Form einzutragen, die Felder werden geschlauft und aus der letzten Seite gesendet.

                      Kommentar


                      • #12
                        Original geschrieben von rönee
                        Der Benutzer braucht nur die Daten ins Form einzutragen, die Felder werden geschlauft und aus der letzten Seite gesendet.
                        aber ohne js geht das nicht. du musst die seite eventuell neu laden lassen, nachdem er auf den submit button gedrückt hat, bspweise so:

                        PHP-Code:
                        echo '<form action="'.basename($_SERVER["PHP_SELF"]).'" method="get">

                        // hier formularfelder...

                        echo "<input type='
                        submit' value='send'>"; 
                        oder habe ich jetzt irgendwas verpeilt? wenn ja, sry, aber ich bin müde....gn8

                        Kommentar


                        • #13
                          Ich versteh leider auch nicht was genau der user wünscht.
                          Soll des am Ende ein Wizard mit Vor, Zurück Butten mit Validierung etc. werden oder was soll das Endergebnis werden?

                          MfG Markus

                          Kommentar


                          • #14
                            Ich verstehe auch nicht ganz, was du nun willst. Wieso reicht dir die Seite nicht aus, wenn du die Variablen mit Form weiter gibst?

                            onClick -> Ich programmiere nur in ColdFusion, aber vielleicht hast du es einfach nicht ausprobiert: Wenn ich in onClick paar Befehle einbau, und sei es ganze Programme, kann mein Server das ausführen. HAst du es schon mal ausprobiert? Also PHP Befehle dort einfach mal auszuführen?

                            Kommentar


                            • #15
                              Hi Mr Dee

                              Guter Ansatz, ja hatte ich auch schon versucht, nur gibt mein Browser immer ein JavaScript fehler aus wenn ich bei OnClick etwas anderes eingebe als JS.

                              Ich habe es nun wie volgt gelöst!

                              Ich mach das Fehlerhandling auf den folgeseiten und include allenfalls das vorherige Form mit den zusatzinfos (welche Felder welches Format benötigen). Und da ich das ganze Form in einer Funktion habe, welche die Formdaten mit zurück nimmt, funtzt es wunderbar. Ohne JS.

                              Schau mal

                              gruss René

                              Kommentar

                              Lädt...
                              X