php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 05.05.2005, 13:19  
Gast
 
Beiträge: n/a
Standard Werbeseite soll alle 2 erscheinen

Ich will, dass Besucher meiner Homepage (bereich: artikel.php) beim ersten Besuch und danach erst alle wieder 2 Stunden zu einer Werbeseite weitergeleitet werden. (wie früher bei giga.de) (unten steht dann nen link: "Weiter zur gewünschten Seite"

bin schon fleißig am coden mit meinen anfängerkenntnissen, doch kriege immer folgende Fehlermeldung:

Zitat:
Warning: Cannot modify header information - headers already sent by (output started at /home/www/web265/html/artikel.php:12) in /home/www/web265/html/artikel.php on line 851

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web265/html/artikel.php:12) in /home/www/web265/html/artikel.php on line 852
Was muss ich tun, damit diese MELDUNG verschwindet ?

der php code, den ich in der artikel php eingefügt habe:

PHP-Code:
<?php
   $gotopage 
"http://www.meineurl.de" getenv("SCRIPT_NAME") . "?" getenv("QUERY_STRING");
   
ob_start();
   
// unterdrückt Header-Output-fehler
   
$time 2*60*60;
   
// 2 Stunden
   
   
if(!empty($_COOKIE['kleine_sperre'])) {
       
$gotopage;
   } else {
       echo 
header("Location: werbung.php");
       
setcookie("kleine_sperre","war da",time()+$time);
   }
   
?> 

?>
meine 2. Frage:
Der User wird also am Anfang und danach erst alle 2 stunden wieder zur Werbeseite geleitet. Wie kann ich in der Werbeseite einen Link einbauen mit der aufschrift "Weiter zur gewünschten Seite" so das der user per klick auf diesem Link zur seite weitergeleitet wird, zu die er eigentlich wolte ??? irgendwie muss das script ja auslesen zu welcher seite der user eigentlich wollte
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 05.05.2005, 13:23  
Gast
 
Beiträge: n/a
Standard

Die Suchfunktion bringt mit headers AND already
Die Suche hat 169 Ergebnisse ergeben.
Warum findest du zu dem Thema nichts? Nicht gesucht?

Gruß
phpfan
 
Alt 05.05.2005, 13:24  
Gast
 
Beiträge: n/a
Standard

1.:
a) echo header ist quark, einfach nur header ("Location:...");
b) Du hast vorher irgendwo schon HTML Output gehabt - das kommt auch von Leerzeilen, die nicht innerhalb der PHP-Tags stehen!

2.:
Ich würde sowas über eine Session machen, z.B. $_SESSION["orig_site"], bevor du weiterleitest. Die Variable benutzt du dann auf der werbung.php um auf die entsprechende Seite zu verlinken.
 
Alt 05.05.2005, 13:29  
Gast
 
Beiträge: n/a
Standard

hab schon gesucht, aber nirgendswo wirklich hilfe bekommen, ausser die antwort: vorher darf nichts ausgegeben werden. Die artikel auf meiner Homepage werden jedoch auf der artikel php ausgegeben (includet). da kann ich nichts machen.

Gibts keine andere Lösung ?

Vielen Dank
 
Alt 05.05.2005, 13:32  
Gast
 
Beiträge: n/a
Standard

s.o. nichts ausgegeben heisst _nicht_, dass irgendein Text ausgegeben werden musste - eine Leerzeile reicht ebenfalls!
 
Alt 05.05.2005, 13:37  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von PC Freak
Die artikel auf meiner Homepage werden jedoch auf der artikel php ausgegeben (includet). da kann ich nichts machen.
Das setzte den Keks vorher! Wenn das auch nicht geht, dann hast du einen Fehler in der Struktur des Scriptes.

Gruß
phpfan
 
Alt 05.05.2005, 13:44  
Gast
 
Beiträge: n/a
Standard

mit ausgeben mein ich nicht das auf der seite nur nen text steht, sondern das dort mein gesamtes artikel script ausgegeben (includet wird)

Wenn ich beispielsweise nur eine seite erstell wo das artikelscript includet wird erscheint folgende fehlermeldung durch dem werbe script:

Warning: Cannot modify header information - headers already sent by (output started at /home/www/web265/html/artikelmanager/show_functions/post_functions.php(300) : eval()'d code:74) in /home/www/web265/html/test111.php on line 18

Ich kann schlecht das Artikel Script rausnehmen, bzw. verändern damit dieses nicht funktioniert

@ phpfan
habe ich schon versucht
 
Alt 05.05.2005, 14:01  
Gast
 
Beiträge: n/a
Standard

<?php
if(isset($foo)) {
header(location : blub ) ;
}
include 'articles.php';
if(empty($_COOKIE['kleine_sperre'])) {
$foo = "bar";
}
?>
 
Alt 05.05.2005, 14:02  
Erfahrener Benutzer
 
Registriert seit: 14.12.2003
Beiträge: 211
pit62
Standard

Wie wäre es mal damit?

echo"<script language=\"JavaScript\">window.location.replace('w erbung.php');</script>";

MfG
pit62 ist offline  
Alt 05.05.2005, 14:25  
Gast
 
Beiträge: n/a
Standard

hab einfach mal den code von pit62 genommen und es klappt

Danke !!!!!!!

jetzt muss die werbung.php noch irgendwie auslesen wo der user eigentlich hin wolte, damit man per klick auf nen link unter der werbung zur seite kommt ?!
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Layer immer zentriert erscheinen lassen andrew22 HTML, Usability und Barrierefreiheit 2 10.05.2007 10:19
Thumbnails erscheinen in Bildgröße! PHP Tipps 2005-2 3 04.06.2005 15:59
meldung erscheinen. PHP Tipps 2004 4 29.07.2004 13:06
html text soll gleich erscheinen - das was php später PHP Tipps 2004 3 22.07.2004 08:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
alle 2 soll was erscheinen php ?

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:15 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.