Seite 1 von 2

php-Seite aufrufen

Verfasst: 08.09.2004 01:21
von SB68Manm
Hi,
ich möchte, nachdem ein paar Codezeilen einer php-Datei abgearbreitet wurden,
automatisch eíne andere Seite laden.

Code: Alles auswählen

<?php

$view = @mysql_query("update tabelle SET Anzeigen='ja' where ID=$ID1");

if ($view) {
	echo("geändert");
} else {
	echo("Fehler beim ändern<br>Fehler: " . mysql_error() . "</p>");

}
?>
 <p><a href="veranstaltungen.php">Zurück zur Startseite</a></p> 
Anstatt dem Link zum Wechseln am Ende soll ein Befehl stehen, der automatisch (meinetwegen auch zeitversetzt, evtl. 1-2sec) zu einer anderen Seite wechselt.

Geht das, und wenn ja, wie :o

Verfasst: 08.09.2004 01:34
von DaniM
Setz das doch an den Anfang des HTML Codes, dann kannst du am ende ein Meta-Refresh machen und man wird weitergeleitet:

Code: Alles auswählen

<?php 

$view = @mysql_query("update tabelle SET Anzeigen='ja' where ID=$ID1"); 

if ($view) { 
   echo("geändert"); 
} else { 
   echo("Fehler beim ändern<br>Fehler: " . mysql_error() . "</p>"); 

} 
?>
<html>
<head>
<title>Sie werden weitergeleitet ...</title>
<meta http-equiv="refresh" content="3; URL=URI_ZUR_SEITE" />
</head>
<body>
<!-- Body -->
</body>
</html>
Mit freundlichen Grüßen,
Dani

Verfasst: 08.09.2004 01:49
von Elo

Code: Alles auswählen

<?php

$view = @mysql_query("update tabelle SET Anzeigen='ja' where ID=$ID1");

if ($view) {
   echo("geändert");
} else {
   echo("Fehler beim ändern<br>Fehler: " . mysql_error() . "</p>");

}

sleep(2);
header("Location: http://www.example.com/veranstaltungen.php");

?>

Verfasst: 08.09.2004 01:54
von DaniM
Elo hat geschrieben:

Code: Alles auswählen

<?php

$view = @mysql_query("update tabelle SET Anzeigen='ja' where ID=$ID1");

if ($view) {
   echo("geändert");
} else {
   echo("Fehler beim ändern<br>Fehler: " . mysql_error() . "</p>");

}

sleep(2);
header("Location: http://www.example.com/veranstaltungen.php");

?>
Nein das wird nicht gehen, da kommt zu 99% "headers already sent" ;-)
Der Header muss am Anfang stehen.

Mit freundlichen Grüßen,
Dani

Verfasst: 08.09.2004 02:00
von Elo
... da kommt zu 99% "headers already sent"..
Nur wenn bereits etwas an den Browser des Users gesendet wurde :wink:

Verfasst: 08.09.2004 02:02
von DaniM
Elo hat geschrieben:
... da kommt zu 99% "headers already sent"..
Nur wenn bereits etwas an den Browser des Users gesendet wurde :wink:
Stimmt!
Wenn du genauer hinschaust wurde 100% etwas an den Browser gesendet. Und zwar an der if - Abfrage. Entweder wird der erste Teil ausgeführt oder der 2. ;-)

Mit freundlichen Grüßen,
Dani

Verfasst: 08.09.2004 02:04
von Elo
Sehe gerade es wurde schon etwas gesandt. Dann funktioniert es natürlich nicht.

Verfasst: 08.09.2004 02:07
von Elo
Ist halt schon spät daher tun's die Augen auchn nicht mehr.

Beste Grüße.

Verfasst: 08.09.2004 08:05
von SB68Manm
DaniM hat geschrieben:Setz das doch an den Anfang des HTML Codes, dann kannst du am ende ein Meta-Refresh machen und man wird weitergeleitet:

Code: Alles auswählen

<html>
<head>
<title>Sie werden weitergeleitet ...</title>
<meta http-equiv="refresh" content="3; URL=URI_ZUR_SEITE" />
</head>
<body>
<!-- Body -->
</body>
</html>
Mit freundlichen Grüßen,
Dani

dank Dir, das geht.

Mir fällt grad auf, das Forum funktioniert nach Eingabe eines Posts ja genauso. :)


Jetzt noch was.
Man kann über ein Webformular Daten eingeben, die in eine SQL-Datenbank eingetragen werden.

Der Datenbankeintrag erfolgt zunächst in der Datenbank,
aber muss durch einen Administrator erst auf sichtbar geschaltet werden,
damit er auf der Webseite angezeigt wird.
Damit ich über neue Einträge informiert werde, sollen Mails an mich
und zur Sicherheit (um unberechtigte Einträge zu vermeiden,
an den Eintrager selbst) gesendet werden.
Da gibts in php bestimmt auch eine Möglichkeit ?

Verfasst: 08.09.2004 12:46
von DaniM
dank Dir, das geht.
Ich habs ja ausprobiert ;-)
Man kann über ein Webformular Daten eingeben, die in eine SQL-Datenbank eingetragen werden.
Korrekt.
Der Datenbankeintrag erfolgt zunächst in der Datenbank,
aber muss durch einen Administrator erst auf sichtbar geschaltet werden,
damit er auf der Webseite angezeigt wird.
Du erstellst bei den Einträgen in der Datenbank (in der entsprechenden Tabelle) ein Feld mit dem Namen "open". Hier trägst du die Werte 1 für freigeschaltet und 0 für "noch nicht freigeschaltet".

Im Administrationsbereich liest du dann diese Einträge aus und setzt die Werte auf 1 (wenn du sie freischalten willst).

Auf der Seite lässt du dann die Einträge anzeigen wo open = 1 ist.

Mit freundlichen Grüßen,
Dani