Fehlermeldung undefined Index
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
aktualisieren
anwendung
array
ausblenden
bar code
code
datei
einstellung
fehler
fehlermeldung
first
hinsicht
index
live anwendung
lokalen testumgebung
meldung
message
selten genutzten lokalen anwendungen
tun
url
-
Hallo zusammen,
auf meiner lokalen Testumgebung bekomme ich seit dem neusten XAMPP-Update oft Fehlermeldungen à la
Notice: Undefined index: XXXX in C:\xampp\htdocs\XXX on line 21
Wie kann ich diese einfach ausblenden?
Die Anwendungen zu aktualisieren und immer zu prüfen, ob die Variablen schon gesetzt sind, würde zu lange dauern...
Vielen Dank! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Das hat eher mit dem von Dir verwendetem Code zu tun.
The error message is caused by the fact that you never check that $_GET['page'] exists before attempting to use it. You should never reference external data without first verifying that it exists with a function such as isset() or empty().
Benutzt Du denn in Deinem PHP Code sowas ähnliches?
$_GET['irgendwas'] $_POST['irgendwas']
Ich vermute das der Fehler in der Variablendeklaration liegt. Kannst Du nicht mal ein bisschen mehr Quälcode posten?
Beitrag zuletzt geändert: 14.2.2012 16:18:37 von siwek -
Mit
ini_set('display_errors','off');
blendest du alle fehler aus...
Musst du nur am Anfang der Datei einfügen, am einfachsten ist es in die Datei die alle anderen Included.
Beitrag zuletzt geändert: 14.2.2012 16:18:27 von dexus85 -
Die Fehlermeldung besagt, dass du auf einen Index (meist den Index eines Arrays) zugreifen möchtest, den es aber nicht gibt.
Hast du beispielsweise folgenden Array:
$array = array( 1 => 'foo', 2 => 'bar', );
Und versuchst diesen Code auszuführen:
echo $array['gibts_nicht'];
So bekommst du eine solche Meldung.
Du kannst natürlich über die Einstellung vom Error-Reporting in PHP unterdrücken, dass es zu solchen Fehlermeldungen kommt. In einer Live-Anwendung solltest du sowieso sämtliche Fehlermeldungen deaktivieren:
error_reporting(0);
In der Entwicklung solltest du dir die Meldungen aber anzeigen lassen. Gerade solche Notices wie die von dir erwähnte machen das Entwickler-Leben oft massiv einfacher und ermöglichen eine gute Fehlerdiagnose. Um Notices generell zu deaktivieren, aber andere Fehler-Meldungen zuzulassen:
error_reporting(E_ALL ^ E_NOTICE);
-
htbib schrieb:
Die Anwendungen zu aktualisieren und immer zu prüfen, ob die Variablen schon gesetzt sind, würde zu lange dauern...
das ist aber der einzige sinnvolle Weg
if ( !isset($_GET['deinidex']) ) { $_GET['deinidex'] = ''; // --- Leerstring oder false oder null }
dann kannst Du später im Code mit $_GET['deinidex'] arbeiten,
... ist halt dann "leer" aber eben "definiert" somit kein Notice: Undefined index
-
Alles klar. Wie es richtig geht, weiß ich, ich habe nur keine Zeit die selten genutzten lokalen Anwendungen in der Hinsicht umzuschreiben. Vielen Dank, das mit dem Ausblenden der Fehlermeldungen hat geklappt!
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage