popup per php

Hi,

ich habe ein Problem. Ich habe eine Seite mit einem Formular.

Das Formular besitzt Eingabefelder usw. und einen Button ( submit ) der eine weitere php Seite aufruft wo Datenbank sachen stehen.

Verbindung zur Datenbank herstellen und die Formular Daten in eine Tabelle einfügen.

Code:
include 'database.php';
$conn = mysql_connect($host,$user,$pwd) or die(mysql_error());
mysql_select_db('unternehmen');
....
....
header("location: http://www.seite.de/eingabe.php");

Es werden also die Sachen eingefügt und ich kehre am Ende auf meine Eingabe Seite zurück. Ich müsste nun irgendwie über die PHP Seite ein Popup aufrufen um den User über Fehler und ähnliches zu informieren. Die Frage ist nun wie ?(
 
Meines Wissens kann man keine Popups per PHP auswerfen, da PHP nur serverseitig agiert.

Mein Vorschlag:

Bau die Seite etwas anders auf:

- Eingabeformular, der Benutzer gibt die Daten ein und drueckt den Knopf zum absenden. Dieses Formular fuehrt zur check.php
- In der check.php werden die Daten geprueft und eventuelle Fehler zurueckgegeben. Mit ein wenig Aufwand kannst du dort das Formular erneut anzeigen, bei dem die korrekten Daten schon eingegeben sind. Wenn die check.php fehlerfrei durchlaeuft, fuehrt dies zur insert.php
- In der insert.php werden die Daten dann in die DB eingetragen.

Es muessen keine drei Dateien sein, aber ich wuerde dir diese drei Schritte empfehlen. Drei Dateien sind es nur in meinem Beispiel, da ich ja nicht weiss, wie deine Seite aufgebaut ist. Das Prinzip kannst du analog auf dein System uebertragen.

mfg
snoggo
 
per PHP lassen sich definitiv keine PopUps erzeugen... wie schon erwähnt: es ist eine SERVERSEITIGE Scriptsprache...

hier mal eine Variante, wie du Formular, Daten-Validierung und Datenverarbeitung sinnvoll in EINE Datei bekommst.

hab das jetzt nur ausm Bauch heraus geschrieben - sollte ich also irgendwo eine Klammer oder ein Semikolon vergessen haben, kannst du mir ja bescheid sagen... bin eh gerade viel zu müde zum Denken...

PHP:
<?
$show_form=true;
$error="";
if(isset($_POST["absenden"]))
{
  if($_POST["foo"]=="")
  {
    $error.="<li>Foo darf nicht leer sein</li>\n";
  }
  if(!preg_match("/^[0-9]+$/",$_POST["bar"]))
  {
    $error.="<li>bar darf nur aus Ziffern bestehen</li>\n";
  }
...
  if($error!="")
  {
    $error="Folgende/r Fehler sind/ist aufgetreten:\n<ul>\n".$error."</ul>\n";
  }
  else
  {
    echo "Daten sind okay und werden jetzt verarbeitet...";
   $show_form=false;
    mysql_.....
  }
}


if($show_form)
{
  echo $error;
  echo "<form action=\"".$_SERVER["PHP_SELF"]."\" method=\"post\">
<table>
.......
<input type=\"submit\" name=\"absenden\" value=\"Absenden\" />
.....
</table>
</form>
";
}
?>
 
Zurück
Oben