Fehler "Undefined index: HTTP_USER_AGENT"

jdgf

Mitglied
Hallo,

in einem Script bekomme ich folgende Fehlermeldung
Notice: Undefined index: HTTP_USER_AGENT in /var/www/web539/html/plugins/content/avreloaded.php on line 502
. Die Fehlermeldung wird nur auf der Startseite angezeigt.

Die monierte Zeile besitzt den Code:
PHP:
$konqcheck = strpos(strtolower($_SERVER['HTTP_USER_AGENT']), 'konqueror');

Der Fehler tritt sehr unregelmäßig auf, kann es damit zusammenhängen, dass dann jemand mit dem Browser Konqueror die Webseite besucht hat.

Kann mir jemand helfen?
Gruß Dietmar
 
mach mal ein phpinfo(); rein und schau dir den Bereich der Servervariablen mal an.
Unregelmässige Fehler sind sehr ungewöhnlich.
Auf jedenfall solltest du eine extra Funktion mit Fehlerbehandlung machen. Schau mal in der Tutorial Sektion und bei Google dafür gibt es einige Tutorials zur Browsererkennung. Vor allem auch weil der Name normalerweise nicht einfach so drin steht sondern mit Versionsnummer und engine. Sprich dein Vergleich würde hier nicht funktionieren.
 
Der Fehler besagt doch, dass in dem Array $_SERVER es keinen Schlüssel mit dem Namen HTTP_USER_AGENT gibt.
Das Interessantere ist das warum und ob noch mehrere Servervariablen leer sind.
Normal ist das nicht ich könnte mir nur Vorstellen das der User Agent von seinem Browser nicht gesendet wird was aber komisch ist wenn der Fehler nur sporadisch auftrit. Also soll er erstmal phpinfo(); anzeigen lassen und das mal damit beobachten.
 
ja auf jedenfall die Variablen in mehreren Browsern mit mehrmaligen Aktualisieren beobachten um den Fehler zu suchen.
 
Meint ihr, dass ich damit das Problem lösen kann:
PHP:
$konqcheck = (isset($_SERVER['HTTP_USER_AGENT'])) ? strpos
(strtolower($_SERVER['HTTP_USER_AGENT']), "konqueror") : 0;
 
naja je nachdem wie man es sieht den Fehler bekommst du nicht aber wie schon gesagt es wird nicht zu dem gewünschten Ergebnis führen.
Das is mehr ein badworkaround. oO
 
Du kannst auch mittels get_browser() den Browser & Co. auslesen, damit sollte es solche Probleme nicht geben.

Diese Funktion versucht die Fähigkeiten des Browsers des Benutzers zu ermitteln, indem sie die Informationen über den Browser aus der Datei browscap.ini ausliest. [...]
Der User-Agent, der analysiert werden soll. Per Voreinstellung wird der Wert des HTTP User-Agent-Headers verwendet
Bitte erst lesen dann denken und dann Posten.
Offensichtlich wird bei Ihm der User Agent nicht korrekt übertragen sonst wäre die Variable nicht leer!
 
Zurück