PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Redirect funktioniert nicht :(



tweetymr
10.05.2010, 14:03
Hi :)
Ich sitze nun schon bestimmt 2 Stunden an einem Script, bei dem man simpel bei Bannerklick zum Link geführt wird, der in der DB unter der angegebenen TAN abgelegt ist.



<?
require_once ('../lib/functions.lib.php');
db_connect();
$_GET['tan'] = addslashes($_GET['tan']);
$right_ads = array('headbanner');
if(!in_array($_GET['ad'],$right_ads)) {
echo "Falsche Parameter!";
exit;
} else {
$con = db_query("SELECT `ziel` FROM ".$db_prefix."_gebuchte_werbung WHERE `tan` = '".$_GET['tan']."' AND `werbeart` = '".$_GET['ad']."'");
if(mysql_num_rows($con) <= 0) {
echo "Kampagne nicht gefunden!";
exit;
} else {
$content = mysql_fetch_assoc($con);
header("location: ".$content['ziel']);
}
}

db_close(); ?>
Man sollte das auch im ausgeloggten Zusatnd machen können, deswegen db_connect(), usw...

Aber wenn ich das bei mir ausführe kommt nur eine weiße Seite ohne jeglichen Quellcode :(
Es muss irgendwas einfaches sein, was ich übersehen habe aber ich komm echt nich drauf.

Bitte um Hilfe
TweetyMR

Parl
10.05.2010, 14:51
Wie weit läuft das script im Normalfall denn? Wenn du $_GET['ad'] mal weglässt, erscheint die Meldung mit den falschen Parametern?

Hab da 2 Vermutungen:

Eventuell ist es nicht der richtige Pfad zur functions.lib.php?


require_once ('../lib/functions.lib.php');

Oder 2.

$_GET['ad'] und ['tan'] sind nicht vordefiniert


if (!isset($_GET['ad'])) $_GET['ad'] = '';
Bin mir da jetzt nich sicher aber bei aktivierter Fehleranzeige ständen da jetzt 2 Notice von wegen undefined index, und da dies als Ausgabe zählt funktioniert weiter unten das header() nicht mehr.

tweetymr
10.05.2010, 16:04
Habe den Fehler gefunden...
Du warst ganz richtig mit dem Pfad -.-
sollte nämlich
require_once('./lib/functions.lib.php');
heißen...

Muss dazu sagen, das mit dem isset... hat mir auch gut weitergeholfen :)

Auf jeden Fall danke! Und ich werde jetzt erstmal ein bisschen Coderpause machen, wenn ich sowas schon übersehe xD

LG
TweetyMR

Lokutos
10.05.2010, 16:16
Auf jeden Fall danke! Und ich werde jetzt erstmal ein bisschen Coderpause machen, wenn ich sowas schon übersehe xD

wenn ein Projeckt 45h entwicklungszeit hat heisst das nicht das man 45h durchcoden muss :biggrin1: