714 Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von fiori Einsteiger_in (9 Punkte)
Hallo zusammen,

habe nachstehend ein kleiner Script um Daten in die Datenbank einzutragen. Funktioniert auch schon. Nun möchte ich auch noch, dass nach dem Senden eine neue Website erscheint (Bestätigungsnachricht). Wer kann mir hier helfen und mir eine kleines Erfolgserlebnis gönnen. DANKE.

<?php
$_POST['submit'] == "submit";
$mysql_host = "localhost";
$mysql_database = "xxxx";
$mysql_user = "xxxx";
$mysql_password = "xxxx";

$link = mysql_connect ($mysql_host, $mysql_user, $mysql_password);
$db = mysql_select_db($mysql_database);
$sql_befehl = 'INSERT INTO xxxx
(ID,Familienname,Vorname)
VALUES("NULL","'.$_POST["Familienname"].'","'.$_POST["Mitteilung"].'");';
mysql_query ($sql_befehl, $link)
?>

1 Antwort

0 Punkte
Beantwortet von Experte (6.4k Punkte)
Hi,
vielleicht kann ich Dir ein kleines Erfolgserlebnis bescheren...

Du kannst z.B. ein if-Statement um Deine query-Funktion basteln. Wenn die Query keinen Fehler ergibt, dann wird der Inhalt des if-Statements ausgeführt. Also bei Deinem Code die letzte Zeile ändern bzw. ergänzen:

...
$query = mysql_query ($sql_befehl, $link);

if( $query)
{
header('Location: andereseite.php');
}


oder etwas kürzer


...
if( mysql_query ($sql_befehl, $link))
{
header('Location: andereseite.php');
}


Das mit dem Header funktioniert aber nur, wenn vor dem Aufruf keine anderer Text ausgegeben wurde. Falls es nicht funktioniert, kannst Du auch einfach so eine MEldung ausgeben, ohne dass Du auf eine andere Seite umleitest. Dazu musst Du statt dem

header('Location: andereseite.php');

einfach was per echo (z.B.) ausgeben, also so:


...
if( mysql_query ($sql_befehl, $link))
{
echo "Hier ist eine Meldung";
}


oder, wenn der ganzen Prozedur ein Formular zugrunde liegt, kannst Du ja auch da (im Formular action="verarbeitendeseite.php") eine andere Seite angeben, die dann die Query verarbeitet und Dir eine entsprechende Meldung ausgibt (Erfolg oder Fehler).
...