Popup soll nach submit selbständig schließen und die Ausgangsseite aktualisieren.

mrepox

Erfahrenes Mitglied
Hallo Leute,


ich bin mit Javascripting mal gar nicht bewandert kenne mich eher mit php aus. Dennoch will ich
dieses Script so umbauen, das es folgerndermaßen reagiert.

Die Hauptseite enthält eine Datenliste, diese soll jetzt mit öffnen eines Formular-Popup verändert werden.
Nach absenden der Formulardaten muß sich das Popup wieder schließen und die Hauptseite muß automatisch
aktualisiert werden.



Hier mal mein Script aus diesem Beitrag:
PHP:
var pop = null;

function popdown() {
  if (pop && !pop.closed) pop.close();
}

function popup(obj,w,h) {
  var url = (obj.getAttribute) ? obj.getAttribute('href') : obj.href;
  if (!url) return true;
  w = (w) ? w += 20 : 520;  
  h = (h) ? h += 25 : 410;
  var args = 'width='+w+',height='+h+',resizable,left=200,top=250';
    popdown();
  pop = window.open(url,'',args);
  return (pop) ? false : true;
}

window.onunload = popdown;
window.onfocus = popdown;


Gelöst habe ich bereits das das Popup sich nach submit wieder löscht und zwar ist im Datenverarbeitenden PHP folgender
Zusatz:

self.close()


So sieht also der Code der PHP Datei aus mit dem self.close() :


PHP:
<?php
include_once('db_fns.php');
include_once('funktionen.php');


$knnrid = $_POST['fknnr_id'];
$knnr = $_POST['fknnr'];
$bsnr = $_POST['fbsnr'];
$anrede = $_POST['fanrede'];

    
        if(update_kunden($knnr,$bsnr,$anrede,))
        {
        echo "<script type=\"text/javascript\">\n";
        echo "self.close();\n";
        echo "</script>\n";


        header('Location: http://xxxxxxxxxxxx.de/faktura/');
        
      }



    else

        echo " Kunde '".stripslashes($name).

             "' konnte nicht in der Datenbank geändert werden.<a href='adress.php'><img src='folder_home.png' width=22 height=22 border=0 ></a><br />";

  
;?>


Das jetzt überbleibende Problem ist, wie kann ich nun die Hauptseite automatisch aktualisieren so das die Änderungen
zu sehen sind?
Die header() Funktion hat leider keine Wirkung mehr. Sie scheint überhaupt nicht zu arbeiten bzw. ist es wohl ein Problem der Fensterhirachie?


Fenster-Schema:

1.Hauptseite öffnet Popup

2.Popup sendet an verarbeiten.php, dort ist self.close() gesetzt, das Popup schließt sich.

3. Hauptseite soll sich aktualisieren z.b. Neuaufruf.


Wäre für eure Hilfe sehr dankbar!:)



EDIT; Habe es so lösen können


echo "<script type=\"text/javascript\">\n";
echo "opener.location.reload();\n";
echo "self.close();\n";
echo "</script>\n";
 
Zuletzt bearbeitet:
Habe doch noch eine Einschränkung bemerkt.

Das ganze funktioniert zwar im Firefox aber nicht im IE6.
Das Popup schließt nicht und der opener wird nicht neu geladen.

Weiß wer Rat?
 

Neue Beiträge

Zurück