StarCraft 2 Forum | inStarCraft.de by ingame™  
Alt 22. Januar 2007, 21:01   #1
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
1 Formular 2 Buttons 2 Addressen?

Advertising
Also ich habe ein Problem:
Ich weiß nicht wie ich es anstellen soll, dass der INhalt eines Formular an 2 verschiedene Addressen geschickt werden kann;
Drücke ich auf Button A soll es an Addresse xy.php geschickt werden, drücke ich auf Button B soll es an yx.php geschickt werden.
Das ganze soll ohne eine dazwischen hängende Datei funktionieren.
GM meinte das ginge mit Javascript und onClick, ka, ich kann Javascript eigentlich garnicht.
Könntet ihr mir da helfen ? :-)
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 08:55   #2
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
gibt mehrere Möglichkeiten, mal hier eine:

Code:
<script type="text/javascript">
function submitTo(theUrl)
{
  var myForm =  document.getElementById('myForm');
  myForm.action=theUrl;
  myForm.submit();
}
</script>

<form id="myForm" ...>
...
<input type="button" onClick="javascript:submitTo('dahin.php')" value="dahin abschicken" />
<input type="button" onClick="javascript:submitTo('dorthin.php')" value="dorthin abschicken" />

</form>
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 08:58   #3
EnimaN
 
Benutzerbild von EnimaN
Dunkler Archon
 
Registriert seit: Aug 2002
Beiträge: 2.781
Es ist aber definitiv eleganter, das über eine zwischengeschaltete php-seite zu lösen - es gibt immer benutzer, die js deaktiviert haben...
EnimaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 09:46   #4
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
mal ne dumme frage:
warum wird eigentlich javascript hier in der codeanzeige in java script getrennt?

habs eigentlich zusammengeschrieben.

Ansonsten will ich hier keine JS Diskussion auslösen. Ne javascriptfreie Fallback-Variante ist sicher schön (man kann z.B. ja ne feste action anbieten, nen Submitbutton platzieren, die 2 Buttons invisible machen oder erst mit JS hinschreiben und wenn js aktiviert ist, den standard Submitbutton ausblenden und dafür die 2 Buttons einblenden).
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 10:12   #5
EnimaN
 
Benutzerbild von EnimaN
Dunkler Archon
 
Registriert seit: Aug 2002
Beiträge: 2.781
du kannst doch auch einfach im aufgerufenen php-script abfragen welche button gedrückt wurde und danach unterscheiden.
EnimaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 10:37   #6
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
Also ich finde JS jetzt nicht unelegant, nur weil einige Leute es abschalten. Dass es wegen Pop-Ups oder nervigen DHTML-Werbungen deaktiviert wird, ist eigentlich sehr schade, da man gerade im Usability-Bereich sehr viel mit reissen kann.

Ich baue eigentlich immer gerne mit js Unterstützung und halt ner funktionierenden Fallback-Version, auf die sich jetzt aber nicht so konzentriert wird. Dass JS z.B. keine endgültige Validation von kritischen Formulardaten übernehmen sollte, ist klar. Aber trotzdem ist es nett, wenn man bei der Ausfüllung eines Formulares direkt live eine "Eingabe ist ok / nicht ok" Anzeige zu sehen bekommt, anstatt nach dem Abschicken eine neuen Seite mit "Ihre Eingaben war nicht korrekt, bitte überprüfen Sie..." oder "der nickname ist bereits vergeben (kann man mit nem xmlRPC ja auch direkt überprüfen)".
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 11:05   #7
EnimaN
 
Benutzerbild von EnimaN
Dunkler Archon
 
Registriert seit: Aug 2002
Beiträge: 2.781
jo auf jeden fall - ich versuche meist die volle formularfunktion gänzlich ohne js zu realisieren (validierung sovieso) - danach kann man gut zusätzliche sachen der benutzerfreundlichkeit per js anbieten

das gleiche gilt ja im prinzip für ajax funktionalitäten - erst traditionell entwickeln und danach ajax aufsetzen.
EnimaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 11:26   #8
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
Was für ne Ajax Engine benutzt eigentlich?
Ich hänge irgendwie noch an jpSpan, es gibt aber sicherlich mittlerweile bessere Engines (http://ajaxpatterns.org/PHP_Ajax_Frameworks), nur habe ich irgendwie nicht so den Elan, jetzt alle durchzutesten .
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 12:39   #9
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
erstmal großes danke

nun noch warum keine php datei zwischengeschaltet sein darf:
die funktion brauch ich für nen Newsscript, für nen "Preview" button.
Wenn man auf den klickt soll das was bis jetzt geschrieben wurde angezeigt werden aber die seite soll natürlich weitererhalten bleiben, preview wird dann mit popup aufgerufen.
Wär da was zwischengeschlatet wär die originalseite verlorn und man müsste ers wieder rumklicken bis man da ist, das is kacke wenn man kleine fehler in der news findet und sie eben rauskickenw ill

Außerdem ist das newsscript nur unseren Newsschreibern zugängig und die ham kein problem mit JS :-)

danke danke
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 12:52   #10
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
Öh, komischer Grund. Du willst nen Popup öffnen, an dem dann die post Daten übermittelt werden?
Dazu ist dann auch noch etwas weiteres JS erforderlich ...
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 12:56   #11
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
inwiefern? tut mir leid kann JS halt nicht
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 13:58   #12
BiBaButzemann
 
Benutzerbild von BiBaButzemann
Belagerungspanzer (Belagerungsmodus)
 
Registriert seit: Aug 2002
Beiträge: 2.927
Naja, musst halt zuerst das Fenster per window.open() erstellen und dann zusehen, dass du die Daten da reinbekommst.

Per get-Aufruf wird es vermutlich nicht machbar sein, da einfach son Text dafür zu lang ist (get kann glaube ich nur 255 Zeichen - bin mir aber da jetzt nicht sicher, können auch n paar mehr sein).

Am Besten ist es wohl, die Elemente dann direkt zu beschreiben.

So a la
var win = window.open("preview.php","width=200,...");

Dann wars glaube ich:
var contentcontainer = win.contentWindow.document;

um an den content (body bereich) zu gelangen, bin mir aber gerade nicht ganz sicher. Eventuell muss noch .body hinter, vielleicht reicht win als Variable auch schon aus. Müsste man probieren

und dann

var header = document.getElementById('inputHeader').value // Daten ausm Formular
contentcontainer.getElementById("divheader").inner HTML = header; //Beschreiben der Daten ins Popup - in nen Element mit der id="divheader"

usw.
BiBaButzemann ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 16:15   #13
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
Zitat:
Original geschrieben von BiBaButzemann

usw.
ok wie mache ich nun usw wenn ich kein plan von JS habe?
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 18:59   #14
EnimaN
 
Benutzerbild von EnimaN
Dunkler Archon
 
Registriert seit: Aug 2002
Beiträge: 2.781
ok, wenn du ehh eine neues fenster öffnen willst, dann kannst du es auch komplett über javascript machen, da du nur so neue fenster öffnen kannst. eine bessere möglichkeit für die vorschau ist imo aber den content über der eingabemaske anzuzuzeigen (wie hier im forum) das läßt sich dann super einfach ohne javascript lösen. der einzige vorteil eines extrafenster wäre, dass man sozusagen liveupdates zeigen kann. dafür sollte sich das fenster den content aber selbst aus dem formular holen (geht auch per javascript)
EnimaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 19:21   #15
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
so ich habs jetzt gelöst bzw habe nochmal hilfe bekommen :
Code:
<script type="text/javascript"> 
function preview(frm) { 
frm.action='preview.php'; 
var fensterchen=window.open('','neuFenster'); 
frm.target='neuFenster'; 
frm.submit(); 
} 
</script>
Code:
<input type="submit" value="Post"> 
<input type="button" value="Preview" onclick="preview(this.form)">
thx für eure hilfe

edit: hmm einen kleinen fehler hab ich noch, hat aber glaub weniger mit Javascript zutun, eher PHP:
Wenn ich in die Textbox zB "GG's" schreibe und das dann ausgebenw ill in der Preview datei , wird "GG\'s" ausgegeben.
Das gleiche hatte ich bei " "xy" ", jedoch konnte ich das mit
$text = str_replace("\\\"","\"",$text);
umgehen bzw beheben.
$text = str_replace("\\\'","\'",$text); <--- da sollen normal 3 \ hin, bzw beim 2. 1 \, genau wie bei " , jedoch macht das forum das net
funktioniert jedoch nicht °°
wodran liegts, wie beheb ichs?
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Alt 23. Januar 2007, 21:20   #16
EnimaN
 
Benutzerbild von EnimaN
Dunkler Archon
 
Registriert seit: Aug 2002
Beiträge: 2.781
stripslashes
EnimaN ist offline  
Mit Zitat antworten
Alt 24. Januar 2007, 13:05   #17
HoRRoRTeRRaN
 
Benutzerbild von HoRRoRTeRRaN
Sanitäter
 
Registriert seit: Jul 2005
Beiträge: 1.364
HoRRoRTeRRaN eine Nachricht über ICQ schicken HoRRoRTeRRaN eine Nachricht über MSN schicken HoRRoRTeRRaN eine Nachricht über Skype™ schicken
danke danke, kann geschlossen werden
__________________
.
HoRRoRTeRRaN ist offline  
Mit Zitat antworten
Antwort
Zurück   StarCraft 2 Forum | inStarCraft.de by ingame™ > Support Foren > Technik/Software-Forum

Themen-Optionen
Ansicht

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

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

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:23 Uhr.


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


ingame Netzwerk
Support | AGB | Probleme mit der Werbung melden
Online Werbung | Mediadaten | Unternehmen | Karriere | Presse | Impressum

© ingame GmbH, ingame™, in™ und incup™ sind eingetragene Markenzeichen der ingame GmbH. Verwendung von Inhalten nur mit schriftlicher Genehmigung.