Zurück   Flashforum > Flash und Server > PHP und MySQL

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 10-07-2004, 21:26   #1 (permalink)
using namespace
 
Benutzerbild von artjom
 
Registriert seit: May 2002
Ort: Hamburg underground
Beiträge: 657
umleitung geht net :(

PHP-Code:
<html><head>
<?php
echo "<meta http-equiv='refresh' content='0; URL=".$url."'>";
?>
</head></html>
moin alle!
bei diesem kleinen script werde ich immer auf: http://meinedomain.de/http://irgendeineurl.de weitergeleitet! liegt des am server? wie kanns ich es verhindern? ohne js

gruß
artjom ist offline   Mit Zitat antworten
Alt 10-07-2004, 22:40   #2 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Schon mal sowas probiert?
PHP-Code:
<?php
header
("Location: http://www.ikea.de");
exit;
?>
(in den <head> rein)
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist gerade online   Mit Zitat antworten
Alt 11-07-2004, 01:17   #3 (permalink)
schnarchnase
 
Registriert seit: Jan 2002
Ort: konstanz
Beiträge: 2.953
lass doch mal bitte gucken, was in deiner $url-variable steht - das meta refresh ist ja schon o.k... vielleicht wird die $url-variable fehlerhaft erzeugt
__________________

perlen vor die säue.
rechtschreibfan ist offline   Mit Zitat antworten
Alt 11-07-2004, 01:18   #4 (permalink)
schnarchnase
 
Registriert seit: Jan 2002
Ort: konstanz
Beiträge: 2.953
Zitat:
Zitat von sonar
Schon mal sowas probiert?
PHP-Code:
<?php
header
("Location: http://www.ikea.de");
exit;
?>
(in den <head> rein)
scho foisch

header-anweisungen MÜSSEN immer vor jeglicher ausgabe erfolgen, sonst heißt's "warning: headers already sent ...", gellens?
__________________

perlen vor die säue.
rechtschreibfan ist offline   Mit Zitat antworten
Alt 11-07-2004, 08:15   #5 (permalink)
Neuer User
 
Benutzerbild von Shine
 
Registriert seit: May 2004
Ort: Geldern
Beiträge: 87
hi,

Zitat:
liegt des am server?
was denn genau, das die url so verhundst ist oder die weiterleitung an sich?

Zitat:
wie kanns ich es verhindern? ohne js
was denn genau, das die url so verhundst ist oder die weiterleitung an sich?


weiterleitungen kannst du serverseitig und clientseitig machen

=> dein meta-tag und per js clientseitig
darauf würde ich mich aber nicht drauf verlassen, das es immer klappert.
http://de.selfhtml.org/html/kopfdate...#weiterleitung http://de.selfhtml.org/javascript/ob...ation.htm#href
=> header-Funktion oder per .htaccess serverseitig. http://de3.php.net/manual/de/function.header.php

an $url wird "müll" übergeben, rechtschreibfan hats ja schon erwähnt
Shine ist offline   Mit Zitat antworten
Alt 11-07-2004, 12:24   #6 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Zitat:
Zitat von rechtschreibfan
header-anweisungen MÜSSEN immer vor jeglicher ausgabe erfolgen, sonst heißt's "warning: headers already sent ...", gellens?
Wie is denn das zu verstehen? Es erfolgt doch vorher gar keine Ausgabe...
(me = PHP-Rookie )
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)
sonar ist gerade online   Mit Zitat antworten
Alt 11-07-2004, 12:35   #7 (permalink)
schnarchnase
 
Registriert seit: Jan 2002
Ort: konstanz
Beiträge: 2.953
Zitat:
Zitat von sonar
Wie is denn das zu verstehen? Es erfolgt doch vorher gar keine Ausgabe...
(me = PHP-Rookie )
probier's doch einfach aus!

eine über http gesendete datei besteht aus zwei teilen:
1. aus dem "header", der dateiinformationen beinhaltet, z.b. den fehlercode, dateigröße etc.
2. aus dem "body", der bei einer html-seite den html-quellcode beinhaltet.

die bezeichungen von header und body hier haben nichts mit den html-tags <head> und <body> zu tun.

der "header" wird immer zuerst gesendet, danach, wenn der client die header-informationen akzeptiert hat, wird der "body" der nachricht gesendet.

es sollte also klar sein, dass keine header-nachrichten mehr gesendet werden können, wenn der versand des bodys bereits begonnen hat.

wenn man also mit php output generiert, sei es jetzt irgendein "echo" oder "print" oder irgendwas vor dem "<?php" - tag, und sei es auch nur ein vergessenes leerzeichen, gehört das schon zum "body" der an den browser gesendeten datei, und alle header-anweisungen werden einfach ignoriert.

weil man header-anweisungen schon auch mal versehentlich erzeugt, ohne zu merken, dass bereits output stattgefunden hat, erzeugt php netterweise ein "warning: headers already sent at line x" - wobei x die zeile im quellcode ist, in der die erste echo-, print- o.ä. - anweisung war.

alle unklarheiten beseitigt?
__________________

perlen vor die säue.
rechtschreibfan ist offline   Mit Zitat antworten
Alt 11-07-2004, 13:00   #8 (permalink)
mod_rewrite
 
Benutzerbild von sonar
 
Registriert seit: Feb 2003
Ort: München
Beiträge: 15.621
Aha OK... danke dir!
Nur - wann und wie verwendet man dann "header" richtig?
__________________
RTFM
Wie man Fragen richtig stellt.

Achim Bindannmalweg

Money makes the world go round, fear makes it turn much faster.
(New Model Army)

Geändert von sonar (11-07-2004 um 13:02 Uhr)
sonar ist gerade online   Mit Zitat antworten
Alt 11-07-2004, 13:35   #9 (permalink)
wissbegierig
 
Registriert seit: Nov 2003
Ort: Hamburg
Beiträge: 206
Zitat:
Nur - wann und wie verwendet man dann "header" richtig?
Das funktioniert:
PHP-Code:
<?php 
if($_GET['variable'] == 1){
    
header("Location: ../index.php");
    exit();
}else{
    
header("Location: ../main.php");
    exit();
}
?>
<html>
<head>
</head>
<body>
</body>
</html>
Und das hier, wird nicht funktionieren:
PHP-Code:
<html>
<head>
</head>
<body>
<?php 
if($_GET['variable'] == 1){
    echo 
'Variable ist true!';
    
header("Location: ../index.php");
    exit();
}else{
    echo 
'Variable ist false!';
    
header("Location: ../main.php");
    exit();
}
?>
</body>
</html>
Wie rechtschreibfan schon sagte:
vor header befehlen darf keine Ausgabe erfolgen, ob nun via PHP oder nur HTML oder JS.
PIXIX ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 14:31 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele