# neues fenster in bestimmter größe öffnen, bei formular - send



## eViLaSh (22. Juli 2004)

Hi,

also ich habe ein Kontaktformular, bei dem ich möchte, dass es beim Klicken auf "Senden" ein neues Fenster öffnet, welches eine bestimmte größe hat, und darin die Variablen übergibt... leider bekomm ich das nicht so richtig gebacken...

habe schon probiert, mit 


```
onSubmit="MM_openBrWindow('kunden_mailer.php','','width=200,height=200,left=80,top=80')"
```

aber da übergibt er die variablen nicht, und aktuallisiert trotzdem die seite, in dem das Formular liegt, was ich aber überhaupt nicht will 


hoffentlich habt ihr verstanden was ich meine und könnt mir evtl. helfen...


----------



## Quaese (22. Juli 2004)

Hi,

willst Du dem neuen Fenster Variablen zuweisen, sollte das mit folgendem Code-Fragement
möglich sein.

```
function sendForm(){
    hWnd = window.open('kunden_mailer.php', 'Fenster', 'width=200,height=200,left=80,top=80');
    hWnd.strTest = "hallo neues fenster";  // Wertzuweisung an Variable
    return false;
}
```
Im neuen Fenster kannst Du die Variablen mit
&nbsp;&nbsp;window.strTest; 
ansprechen.

Willst du auf Variablen aus dem aufrufenden Fenster zugreifen, so kannst Du dies 
über das Fenster-Objekt *opener* realisieren.
Zum Beispiel Zugriff auf den Inhalt eines Textfeld mit Namen "txtTest" im Formular 
"formTest".

```
opener.formTest.txtTest.value;
```
Ich hoffe, das hilft Dir weiter.

Ciao
Quaese


----------



## Tobias Menzel (22. Juli 2004)

Hi,

nur noch als Zusatz: Mit einer solchen Funktion kannst Du die Variablen auch ganz normal an die URL anhängen, wo sie von PHP mit $_GET ausgelesen werden können:
	
	
	



```
function sendForm(url, ctrl1, ctrl2) {
    var vs1=ctrl1.name+"="+ctrl1.value;
    var vs2=ctrl2.name+"="+ctrl2.value;
    hWnd=window.open(url+"?"+vs1+"&"+vs2,"Name",'width=200,height=200,left=80,top=80');
    return false; // oder dem Formular keine Action zuweisen!
}
```
ctrl1 und ctrl2 sind hierbei z.B. zwei Steuerelemente:
	
	
	



```
onSubmit="sendForm('mailer.php', document.getElementById('textfeld1'), document.getElementById('textfeld2'))"
```

Wenn Deine Steuerelemente Text mit Sonderzeichen enthalten, kannst Du die Strings vor dem Senden noch escapen.

Gruß


----------



## eViLaSh (23. Juli 2004)

danke schonmal...

d.h. ich muss also die variablen gleich im javascript mit übergeben ?

ich hatte gestern noch eine lösung gefunden die so aussieht:

<form method="post" action="javascript:MM_openBrWindow('kunden_mailer.php','','width=200,height=200,left=400,top=300')">

dabei öffnet sich nur das neue Fenster !

allerdings werden die variablen aus dem formular nicht mit gesendet...

d.h. ich muss jetzt wie Datic geschrieben hat die variablen übers javascript mitsenden ?

wieso geht das nicht mit der form action wo ich sie dann als post-variablen mit PHP auslesen kann ?


----------

