![]() |
[PHP] Prüfen ob Variable leer ist
Hallo,
ich möchte in PHP prüfen lassen, ob eine Variable beim öffnen der Seite vorhanden ist und wenn nicht diese umleiten. Wie kann ich das machen? Ich habe es so probiert aber das funktioniert nicht:
Code:
Gruß
<?php
if ($ID='') { header("Location: http://www.addy.de"); exit; } ?> Thomas |
Re: [PHP] Prüfen ob Variable leer ist
Hallo,
mit isset.
Code:
<?php
if (!isset($ID)) { header("Location: http://www.addy.de"); exit; } ?> |
Re: [PHP] Prüfen ob Variable leer ist
Hi Thomas,
probiers mal so:
Code:
Beachte aber dass PHP case-sensitiv ist.
if (!empty($ID)
{ //Dein Code } Greetz alcaeus |
Re: [PHP] Prüfen ob Variable leer ist
Ich nehme an Du brauchst isset():
Code:
evtl. solltest du auch isset($_GET["ID"]) bzw. isset($_POST["ID"]) nehmen ;)
<?php
if (isset($ID)) { header("Location: http://www.addy.de"); exit; } ?> ![]() |
Re: [PHP] Prüfen ob Variable leer ist
Also irgendwie funktioniert es immer noch nicht so ganz. Denn es wird immer diese Fehlermeldung ausgegeben (bei allen o.g. Variationen).
Warning: Cannot modify header information - headers already sent by (output started at /var/www/web200/html/Test/datei1.php:8) in /var/www/web200/html/Test/datei2.php on line 10 Vielleicht habe ich mich auch blöd ausgedrückt. Es PHP soll prüfen ob diese Variable existiert (was ja eigentlich das gleiche ist wie leer, oder)? Was nun??? :cry: Thomas |
Re: [PHP] Prüfen ob Variable leer ist
Hi Plague,
erstellt das Script bereits eine andere Ausgabe? Sobald nämlich etwas ausgegeben wird, darfst du keinen Header mehr senden. Versuch mal folgendes vor dem header-Befehl einzufügen:
Code:
Ich weiß nicht ob es funktioniert, vielleicht hast du ja Glück
ob_end_clean();
Greetz alcaeus |
Re: [PHP] Prüfen ob Variable leer ist
Nein, also der erste Code im PHP ist die If-Abfrage der Variablen. Vorher steht nur HTML-Code...
Gruß Thomas |
Re: [PHP] Prüfen ob Variable leer ist
Zitat:
Greetz alcaeus |
Re: [PHP] Prüfen ob Variable leer ist
Dann lasse ich sie einfach nach der If-Abfrage per echo() erstellen...
Danke Thomas |
Re: [PHP] Prüfen ob Variable leer ist
JUHU!!!
Es klappt! :thumb: Danke Thomas |
Re: [PHP] Prüfen ob Variable leer ist
Zur Klärung:
die header() Funktion (die nicht nur zum umleiten per Location dient) sendet HTTP - Header. Wenn bereits eine Ausgabe gestartet wurde (ein Leerzeichen vor dm Script würde genügen) kann der Browser ja nicht mehr umstellen. Will man aber nicht alles per echo ausgeben, würde es folgende Methode geben: Anstatt:
Code:
das:
<?php
header("Location: foobar.php"); ?>
Code:
Achtung:
<?php
echo "<script>\n"; echo "locatio.href = 'foobar.php';\n"; echo "</script>\n"; ?> Nach einer Weiterleitung - egal ob JS oder PHP - die aus Sicherheitsgründen erstellt wurde, immer:
Code:
Denn wenn das header() versagt oder wenn der user JS ausgeschaltet hat (keine Weiterleitung) darf der Rest der Seite auch nicht mehr angezeigt werden!
exit;
Achja: JS kann natürlich ausgeschaltet sein, daher etwas "dumm". air |
Re: [PHP] Prüfen ob Variable leer ist
Man kann des auch einfach so machen:
Code:
<? if (§a == "b")
{ header ("Location: http://google.de/") exit; } ?> HTML-Code <? PHP-Code ?> |
Re: [PHP] Prüfen ob Variable leer ist
Zitat:
ich möchte dich hier noch drauf hinweisen, daß in PHP Vergleiche nicht mit $ID='' sondern mit "if $ID==''" gemacht werden. Mittels $ID='' setzt du nämlich ein einem Ruck auch gleich den Wert auf '', und somit ist der Vergleich immer TRUE. Ich hatte das Problem schon sooft weil ich wohl zuviel in Delphi progge. Und den Fehler sucht man dann meist sehr lange... Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz