Formular mit zwei Ziel-adressen?

Ronald Nickel

Legendäres Mitglied
Hallo an der Proggerfront.

Situation:
1 Formular mit einem Text-Feld sowie 2 Radiobuttons deren Werte www.ayom.com bzw. www.google.de sind.(fiktive Seiten) Und natürlich ein submit.


Ist es möglich, dieses formular mit all seinen feldinhalten abhängig von dem angewählten Radiobutton entweder an ayom bzw. google zu schicken? Wenn ja wie? Denke mal JavaScript ist hier angesagt.

Gruß Ronny
 
Mit PHP ganz einfach!

Formular macht in der action ein Post auf ein PHP-Script, dieses liest dein Radiobutton aus, und ändert daraufhin die TO: Adresse, und verschickt das ganze mittels mail()
 
Mit Javascript kannst Du die Action-Eigenschaft vom Formular ändern, z.B. beim OnClick vom Submit-Button. Diese Action-Eigenschaft beinhaltet die Zieladresse. Im Prinzip also den String vom selektierten Radiobutton in die Action setzen, abschicken und gut is ;-)

Griessli
Irene
 
Es kann nicht reichen den Wert auszulesen und zu headern, weil niemals alle auf den gleichen Syntax hören.

CODE
<script>
function handleSubmit ()
{
var go = +http://"+document.gelElementById('website').value;
go += "/search?q="+document.getElementById('q').value;
document.location.href = go;
}
</script>
<form onsubmit='handleSubmit()'>
<input type='text' id='q'>
<select id='website'>
<option value='www.google.com'>g</option>
</select>
<input type=button value='dume'>
</form>



Wir wahrscheinlich Fehler enthalten. Würde nicht onclick auf Button, weil es auch Enter ein Formular abschicken kann.
 
Ich würde das nicht mittels JavaScript erledigen, sondern eher auf die CURL Funktionssammlung zurückgreifen, oder gleich eine entsprechende Socket anfragen starten. So erledigt der Server diese Eintragung und kein JavaScript, was der Benutzer ausgeschaltet haben kann, oder gar nicht benutzen kann (Textbrowser, Screenreader u.a.).



MfG Sascha Ahlers
 
Falls kein serverseitiger Code vorhanden, oder falls dieser nicht benutzt werden soll: hier ein kleines Sample, getestet:

CODE <script type="text/javascript">
function CheckURL() {
var sURL="";
for(i=0; i<document.frmMain.optURL.length; i++){
if(document.frmMain.optURL[i].checked){
sURL = document.frmMain.optURL[i].value;
break;
}
}
if(sURL!=""){
document.frmMain.action=sURL;
return true;
}
alert("Bitte eine Option auswählen.");
return false;
}
</script>

<form id="frmMain" name="frmMain" action="standardziel.htm" method="post" onSubmit="return CheckURL();">
Senden an: <br>
<input type="radio" name="optURL" id="optURL" value="http://www.google.ch" checked>Google<br>
<input type="radio" name="optURL" id="optURL" value="http://www.microsoft.ch">Microsoft<br>
<br>
<input type="submit" value="Absenden">
</form>

@Alain:
Ich verstehe "auszulesen und zu headern" nicht, und ein location.href macht ja keinen Submit, somit würden die Formulardaten nicht übermittelt?

Griessli
Irene
 
Vielen Dank erst mal. Leider stellt sich diesbezüglich ein neues Proble. Ich möchte das Google-Suche-Feld so modifizieren das es entweder zur Gogle-Suche geht oder eine einegen (Verity) Suchmaschine anspricht. Das zweite würde allerdings mit der POST-Methode funktionieren wärend das Google-formular GET vorgibt. Des weiteren gibt das Google formular als alternativ-URL eine TLD- vor, die kein Slash beinhalten darf, ich also keine Unterseite ansprechen kann. Somit dürfte das Script von Irene hierfür nicht verwendbar sein.

Hat sich jemand dieses Google mal umgeschrieben und die "Eigene Seite" als Suchausgabe modifiziert?

Gruß Ronny
 
QUOTE Ich verstehe "auszulesen und zu headern" nicht, und ein location.href macht ja keinen Submit, somit würden die Formulardaten nicht übermittelt?

Auslesen ist klar und headern ist wenn immer ich irgenwo in den Wald hineinrufe, sodass ich einen header (und evtl. gar einen body zurückkriege). Schönes Wort nicht ;-)
Wer braucht das Formular? So wie ich die Aufgabenstellung verstanden habe, funktioniert meine Lösung konzeptionell, ich greife die Daten aus dem Formular ab und die Funktion macht was immer der grosse Mann will. Die Daten werden ja von der Funktion ausgelesen. Ach das mit den Radio-Buttons hab ich überlesen.
Und @Irene, wenn Du verschiedene Suchen ansprichst dann ist es sehr unwahrscheinlich, dass Du jeder die gleiche Url senden kannst. Meine Funktion bräuche noch eine Fallunterscheidung.


QUOTE Hat sich jemand dieses Google mal umgeschrieben und die "Eigene Seite" als Suchausgabe modifiziert?

Mein aktueller Lieblingssatz ist die Definition von Untermanifaltigkeit von Forster.
Also was ich sagen möchte. Hä? Ich nicht verstehn.

@Ronnic, Mit einer konkreten Beispielseite hätte ich obiges JS funktionieren machen können.
Und ich würde Suchen nicht per POST ansprechen, der Suchterm sollte in der Url sein.
 
QUOTE (Alain Aubert @ Mi 13.9.2006, 11:24)Und @Irene, wenn Du verschiedene Suchen ansprichst dann ist es sehr unwahrscheinlich, dass Du jeder die gleiche Url senden kannst. Meine Funktion bräuche noch eine Fallunterscheidung.

Ich wusste bis jetzt absolut nicht, dass es um Suchen geht.
blink.gif


Für mich war die Problemstellung "Formular abschicken an [URL abhängig von Usereingabe]". Alles andere in diesem Thread ist für mich Bahnhof ;-) Aber ich stimme mit Euch überein, dass komplexere Formular-Änderungen als nur die Action oder Method sinnvollerweise in serverseitigem Code erledigt werden.

Griessli
Irene
 
Zurück
Oben