Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

popupfenster öffnen

hallo zusammen,

ich habe ein kontaktformular als php-script.
nach dem versenden möchte ich gerne ein popup öffnen. dies soll eine bestimmte größe haben, keine scrollbar etc. und soll zentriert erscheinen.

kann mir dabei jemand hefen?

danke und gruß
rolf


Antworten zu popupfenster öffnen:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hi |

Wäre interessant, ob sich das Formularskript zum Zweck der Auswertung selber aufruft. In dem Fall müsstest du dynamsich JavaScript generieren.

Im anderen Fall einfach einen entsprechenden JavaScript-Schnipsel statisch ins Skript einbauen.

Wie das JavaScript aussehen muss: http://de.selfhtml.org/javascript/objekte/window.htm#open

greez 8)
JoSsiF

hi zurück und erstmal was ganz anderes: hast du auch noch was anderes zu tun, als hier zu antworten? ;-)
nicht falsch verstehen - ich freu mich immer über schnelle antworten :-)

so, nun aber ernst:

das kontaktformular wird per link geöffnet, damit daten eingetragen werden können.
nur beim versand soll das popup aufgehen

das javascript hab ich schon.

****************************
   <SCRIPT LANGUAGE='JAVASCRIPT' TYPE='TEXT/JAVASCRIPT'>
   
   <!--
   /*
    Versandmeldung für die E-Mail
   */
   var win=null;
   function NewWindow(mypage,myname,w,h,pos,infocus){
   if(pos=="random"){myleft=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;mytop=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
   if(pos=="center"){myleft=(screen.width)?(screen.width-w)/2:100;mytop=(screen.height)?(screen.height-h)/2:100;}
   else if((pos!='center' && pos!="random") || pos==null){myleft=0;mytop=20}
   settings="width=" + w + ",height=" + h + ",top=" + mytop + ",left=" + myleft + ",scrollbars=no,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no";win=window.open(mypage,myname,settings);
   win.focus();}
   // -->
   </script>
************

und den aufruf auch:

<body onLoad="NewWindow('http://www.ambiente-mallorca.info/mailsend.htm','mypopup','450','110','center','front');">

nur mit diesem aufruf kommt das popup immer, also auch beim öffnen des formulars zur dateneingabe

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Hi back |

Jo, hab schon noch genügend andere Sachen zu tun, aber irgendwie isses wie eine Sucht ;D  ...und zudem lernt man immer wieder selber dazu, denn hier und da muss man natürlich auch erstma nachschauen.

Zum Problem:

nur mit diesem aufruf kommt das popup immer, also auch beim öffnen des formulars zur dateneingabe

Genau das habe ich gemeint, als ich danach fragte, ob sich das Skript selber aufruft. Frage ist damit beantwortet.

Mögliche Lösung:

Im Formular einen weiteren Parameter übergeben (z.B. in einem Hidden Field), der "sent" heißen könnte (name-Attribut) und irgendeinen Wert bekommt (value-Attribut).

An der Stelle, wo das JavaScript eingefügt wird, fügst du dann folgende Abfrage ein:

<?php
if ($_REQUEST[&#39;sent&#39;])
{
  
// hier wird der JS-Code eingefügt
  
echo ... ;
}
?>


Das Ganze nochmal beim Aufruf im Body-Tag:

<body <?php if ($_REQUEST[&#39;sent&#39;]) { ?>onLoad="NewWindow('http://www.ambiente-mallorca.info/mailsend.htm','mypopup','450','110','center','front');" <?php ?>>

...

Nicht getestet, aber sollte funzen ;)

greez 8)
JoSsiF

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Nachtrag:
Der Code ist natürlich schlecht geschrieben, weil 2 Varianten der Ausgabe verwendet werden: einmal mit einem echo-Aufruf, und einmal in einem reinen HTML-Block, der ebeb nur im If-Zweig ausgegeben wird.

Es ist gut, sich auf 1 Variante festzulegen zwecks Code-Lesbarkeit und Ordnung :)

greez 8)
JoSsiF

hab es jetzt so eingebaut:

************
<?php
if ($_REQUEST['sent'])
{
  // hier wird der JS-Code eingefügt
   <SCRIPT LANGUAGE='JAVASCRIPT' TYPE='TEXT/JAVASCRIPT'>
   
   <!--
   /*
    Versandmeldung für die E-Mail
   */
   var win=null;
   function NewWindow(mypage,myname,w,h,pos,infocus){
   if(pos=="random"){myleft=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;mytop=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
   if(pos=="center"){myleft=(screen.width)?(screen.width-w)/2:100;mytop=(screen.height)?(screen.height-h)/2:100;}
   else if((pos!='center' && pos!="random") || pos==null){myleft=0;mytop=20}
   settings="width=" + w + ",height=" + h + ",top=" + mytop + ",left=" + myleft + ",scrollbars=no,location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no";win=window.open(mypage,myname,settings);
   win.focus();}
   // -->
   </script>
?>
*****************

dann bekomme ich folgende fehlermeldung:

Parse error: parse error, unexpected '<' in /usr/local/pem/vhosts/37614/webspace/httpdocs/info_ferien.php on line 430

Zeile 430 ist: <SCRIPT LANGUAGE....

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Klaro, du hast das echo vergessen. Kannst das durchaus so stehenlassen, aber dann musst du vor dem JS-Teil den PHP-Block schließen, danach wieder öffnen und den If-Block mit } schließen (siehe 2. Codeschnipsel).

greez 8)
JoSsiF

werd ich morgen versuchen - informiere dich dann über das ergebnis.
jetzt ist feierabend und noch nen bisschen strand und meer angesagt... ;-)

danke erstmal - hasta proxima

rolf


« Links zu Fenster ohne HP erstellen »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Javascript
JavaScript ist eine weit verbreitete Skriptsprache, die ursprünglich von Netscape für das DOM-Scripting für Webseiten entwickelt wurde. Sie hat sich seitde...

E-Mail
E-Mail ist eine Abkürzung für den englischen Begriff electronic mail, der sich mit elektrische Post ins Deutsch übersetzen lässt. Dieses bezeichnet ei...

AGP Schnittstelle
Die AGP (Accelerated Graphics Port) - Schnittstelle wurde in den 1990er Jahren eingeführt und war speziell für Grafikkarten in PCs konzipiert. Sie bot eine dire...