SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > HTML, CSS und JavaScript Help!
Hilfe Community Kalender Heutige Beiträge Suchen

HTML, CSS und JavaScript Help! Hier gibt es Hilfe zu HTML, CSS und JavaScript Problemen

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.10.2009, 12:48:35
trueleader trueleader ist offline
Anfänger
 
Registriert seit: Oct 2009
Alter: 43
Beiträge: 21
Submit Button Simulieren

Hi all,

... ja, ein Thema mit dem Namen gibt es schon, allerdings ist es etwas anderes, als ich möchte.

Gegeben ist eine Webapplikation mit rund 50MB Code, bestehend aus einer Menge HTML Formularen und PHP Scripten zur Verarbeitung.

Bsp. HTML:
HTML-Code:
<form name="testForm" onSubmit="submitAction1(); submitAction2();">
    <input type="text" name="textFeld" value="<?php echo htmlentities($textFeldValue); ?>" onClick="return confirm('message');" />
    <input type="submit" name="save" value="<?php echo htmlentities(l10n("save")); ?>"  onClick="return confirm('message');" />
    <input type="submit" name="delete" value="<?php echo htmlentities(l10n("delete")); ?>" onClick="return confirm('message');"  />
    <input type="submit" name="archive" value="<?php echo htmlentities(l10n("archive")); ?>" />
</form>
In PHP wird dann mittels $_POST["save"], $_POST["delete"], $_POST["archive"] unterschieden, was gemacht werden soll.


Jetzt das Problem:
Eine neue Anforderung ist, das der Confirm Dialog nicht allzuschnell weggeklickt werden können und daher eine zusätzliche Checkbox eingefügt werden soll. Zeitansatz 5h für alle Dialoge. ... Mit Confirm an sich nicht machbar, mit unseren Boardmitteln ein "popup div" gebaut, welche dem gewünschten aussehen nahe kommt, und die onClick Handler gegen die neue Funktion getauscht.

Dadurch, das es nun kein BuildIn Confirm mehr ist, muss die von mir erstellte Funktion immer FALSE zurück liefern, um das Abschicken initial zu unterbinden. Bei Bestätigung der Box wird dann mittels Callback das Ursprungsformular versand.

ABER: Durch das "return false" wird bei der Formular übertragung natürlich nicht mehr der Button, welcher geklickt wurde, mit übermittelt. Kann ich diesen "Button aktiviert" Status des Formulars irgendwie Simulieren? Aufgrund des aufwandes in HTML&PHP fällt ein neues Feld ala "formularAction" leider aus


Danke für Einfälle
Grüße
True
Mit Zitat antworten
  #2  
Alt 02.10.2009, 15:18:04
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
AW: Submit Button Simulieren

Hi trueleader

erstmal willkommen auf selfphp

wenn i di richtig verstanden hab, ist es so

das dein onclick ein "Div popup" macht, wo sich noch eine Checkbox drin is

wenn diese checkbox gesetzt ist und der Button gedrückt wird, soll das eigentliche formular abgesendet werden

genau da is das prob, richtig??

Gib dem eigentlichen Formular eine ID
dann kannst du mit einwenig JS dieses auch submiten, wenn das "Popup" erfolgreich war
Code:
function submit_this_form(form_id) {
    var tag_elements = document.getElementsByTagName('form');

    for (var i = 0; i < tag_elements.length; i++) {
        var tag_element = tag_elements[i];
        if (form_id == tag_element.id
        ) {
            return tag_element.submit();
        }
    }
}
benötigt zum submit'en die id des formulars


Hoffe i hab alles richtig verstanden
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
  #3  
Alt 02.10.2009, 16:00:03
trueleader trueleader ist offline
Anfänger
 
Registriert seit: Oct 2009
Alter: 43
Beiträge: 21
AW: Submit Button Simulieren

Hi,

danke für die Begrüßung und die erste Antwort :)

dies ist leider nicht das Problem.
Das Popup was sich öffnet, hat sein eigenes Formular, welches mittels AJAX abgeschickt, von PHP validiert und daraufhin bei Fehler erneut angezeigt oder bei bestanden den JavaScript Callback Handler aufruft.

Der Callback schickt dann das eigentliche Hauptformular ähnlich wie von dir beschrieben ab und es kommt auch im PHP inklusive der Nutzer Eingaben an.
Aber die Information über den geklickten Button fehlt halt.

In dem von mir gepostetem Beispiel HTML würde mittels klick auf Speichern folgendes im PHP ankommen:

$_POST = array("textFeld" => "NUTZEREINGABE", "save" => "save");

Wenn ich das aus dem Popup mittels JavaScript form.submit() abschicke, dann erhalte ich nur:

$_POST = array("textFeld" => "NUTZEREINGABE");

Die Information über den Button ist verloren gegangen.
Mit Zitat antworten
  #4  
Alt 02.10.2009, 16:48:56
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
AW: Submit Button Simulieren

Hi @gain

dann lass die action über deinen Return vom AJAX setzten
in ein hidden field
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
  #5  
Alt 02.10.2009, 17:15:12
trueleader trueleader ist offline
Anfänger
 
Registriert seit: Oct 2009
Alter: 43
Beiträge: 21
AW: Submit Button Simulieren

Yop, das würde gehen, allerdings beachte bitte mein letzten satz im einleitenden Text ^^

Das würde hunderte von HTML Seiten betreffen (wobei ich den Teil noch von dem callback automatisch generieren lassen könnte) und entsprechend viele PHP Dateien, welche dann ja nicht mehr Abfragen ala "if (!empty($_POST["save"]))" sondern "if ($_POST["formAction"] == 'save')" machen müssten

Ich hatte eher gehofft, es würde eine einfache Möglichkeit geben, wie
"document.formName.buttonName = 1" oder "getElementsByName('buttonName').activate()"
Mit Zitat antworten
  #6  
Alt 02.10.2009, 17:21:18
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
AW: Submit Button Simulieren

Da du schon JS verwendest

kannst du auch ein Hiddenfield per JS in das Formular einbaun.

damit musst du ned so viel basteln
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
  #7  
Alt 02.10.2009, 17:43:14
trueleader trueleader ist offline
Anfänger
 
Registriert seit: Oct 2009
Alter: 43
Beiträge: 21
AW: Submit Button Simulieren

Ja, wie gesagt, den Teil könnte ich autom. generieren lassen, aber der Teil von PHP müsste ja händisch umgebaut werden

hm, oder funktioniert es, wenn ich ein hidden field mit gleichen Namen wie den Button erzeuge ... eigentlich dürfte das nicht Funktionieren, aber probieren kann mans ja mal. Hatte auch schon die Idee, gleichzeitig den Button einfach entfernen zu lassen, allerdings wäre der Button dann weg, wenn die Validierung der Daten fehlschlagen würde und der User das Formular Korrigieren muss
Mit Zitat antworten
  #8  
Alt 02.10.2009, 17:49:05
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
AW: Submit Button Simulieren

Hi

das würde gehn, wenn das Hidden-Field als letztes Element übermittelt wird
also vor dem </form>
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
  #9  
Alt 06.10.2009, 18:36:55
trueleader trueleader ist offline
Anfänger
 
Registriert seit: Oct 2009
Alter: 43
Beiträge: 21
AW: Submit Button Simulieren

Danke, funktioniert :)

der jeweilige CallbackHandler erzeugt ein HiddenField mit einem identischem Namen zum ursprünglich betätigtem Button und hängt das Feld dem Formular an.

Im PHP ist dann der gewünschte Parameter enthalten :)
Mit Zitat antworten
  #10  
Alt 07.10.2009, 09:17:39
Benutzerbild von Nev
Nev Nev ist offline
Member
 
Registriert seit: Feb 2002
Ort: Österreich / Wien
Alter: 44
Beiträge: 992
AW: Submit Button Simulieren

Gratuliere

wie gesagt, hinten im formular is wichtig
__________________
Cu
Nev the XxX (Sven-Marcus Maderbacher)

Master of www.Burnworld.de
www.Nev-hilft.de die Seite für den Coder
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
submit eingaben püfen funzt nicht Haraldo PHP Grundlagen 6 22.09.2009 16:31:53
Submit Button hebt sich automatisch hervor Mutated! HTML, CSS und JavaScript Help! 0 24.08.2007 19:37:42
submit button ändern in ein bild Sandra PHP Grundlagen 3 04.03.2007 17:08:02
Formular mit GET-methode, Wert des Submit Button NICHT mitgeben?! 8805-evergreen. PHP Grundlagen 5 11.04.2006 14:11:43
Statt SUBMIT Button -> Hyperlink mit JS?!? Morethir PHP Grundlagen 2 19.02.2006 13:45:17


Alle Zeitangaben in WEZ +2. Es ist jetzt 13:56:34 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt