Fehler "Undefined index: HTTP_USER_AGENT"

Bitte erst lesen dann denken und dann Posten.
Das geht sicher auch freundlicher.

Dass diese Funktion lediglich die Informationen zurückgeben kann, die auch in $_SERVER['HTTP_USER_AGENT'] stehen, ist ja wohl sonnenklar.

Nur bekommt man bei dieser niemals einen Fehler zurück, sondern maximal "nichts". Damit lässt sich viel schöner arbeiten, als wenn man noch auf die Existenz prüfen muss.
 
Das geht sicher auch freundlicher.
Das war freundlich.

Nur bekommt man bei dieser niemals einen Fehler zurück, sondern maximal "nichts". Damit lässt sich viel schöner arbeiten, als wenn man noch auf die Existenz prüfen muss.
Dann hast du maximal das Workaround das er selbst auch schon vorgeschlagen hat.
Das bringt ihn aber der Lösung des Problems kein Stück näher.
Sorry wenn ichs so krass sag aber es bringt halt nichts Ideen in den Raum zu stellen die nicht der Problemlösung beitragen. Daher auch der Satz den du fälschlicher weise leider als Angriff aufgefasst hast.
oO
 
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
Wieso sollte diese Lösung schlecht sein? Man kann sich nicht darauf verlassen, dass der Browser eine User-Agent-Zeile mitschickt. Also muss man sowieso überprüfen, ob das entsprechende Feld gesetzt ist. Was würdest du denn als Alternative dazu vorschlagen?

Grüße,
Matthias
 
Wieso sollte diese Lösung schlecht sein? Man kann sich nicht darauf verlassen, dass der Browser eine User-Agent-Zeile mitschickt. Also muss man sowieso überprüfen, ob das entsprechende Feld gesetzt ist. Was würdest du denn als Alternative dazu vorschlagen?

Grüße,
Matthias
Ich sagte nicht das die Lösung schlecht ist sondern das Sie ein workaround ist die nicht das gewünschte Ergebnis bringt.
Das man sich nicht unbedingt darauf verlassen kann ist mir auch klar und das Konqueror hier so einen derben Bug hat überrascht mich.
Mein Vorschlag war ja das Problem mal umfassend zu beobachten aber das scheint wohl auch erstmal nicht in Betracht zu kommen?
Sorry das ich es nicht gut finde einen Fehler zu umgehen statt Ihn genau zu untersuchen.
 
Sorry das ich es nicht gut finde einen Fehler zu umgehen statt Ihn genau zu untersuchen.
Nochmals: was wäre denn die Alternative? Es muss so und so auf die Existenz des Keys getestet werden, wenn keine Warnung kommen soll. Was der Browser tut, hat man als Webprogrammierer in der Regel nicht in der Hand. Insbesondere muss man auch damit rechnen, dass der Browser sich nicht immer so verhält, wie man das vielleicht vermuten würde (sei es aus Prinzip oder wegen eines Programmfehlers). Insofern kann ich hier nicht erkennen, wo ein Fehler „umgangen“ wurde. Man trägt mit der Abfrage nur der Möglichkeit Rechnung, dass der Browser keinen User-Agent mitschickt.

Grüße,
Matthias
 
Nochmals: was wäre denn die Alternative? Es muss so und so auf die Existenz des Keys getestet werden, wenn keine Warnung kommen soll.
Das ist klar und hab ich auch nicht abgestritten.

Was der Browser tut, hat man als Webprogrammierer in der Regel nicht in der Hand. Insbesondere muss man auch damit rechnen, dass der Browser sich nicht immer so verhält, wie man das vielleicht vermuten würde (sei es aus Prinzip oder wegen eines Programmfehlers). Insofern kann ich hier nicht erkennen, wo ein Fehler „umgangen“ wurde. Man trägt mit der Abfrage nur der Möglichkeit Rechnung, dass der Browser keinen User-Agent mitschickt.
Ich Stimme dir ja voll und ganz zu aber das allein reicht halt meiner Meinung nach nicht. Das eine Browsererkennung leider nicht einwandfrei funktioniert ist mir auch klar und ich hatte ja auch die Vermutung geäußert der Browser könne den User Agent nicht senden. Aber es sollte halt schon eingehend geprüft werden ob der Fehler auch wirklich daran liegt.
Da jetzt wohl schon klar ist das der Konqueror hier streikt habt ihr soweit schon recht das nur ein Workaround übrig bleibt aber was mich nunmal gestört hat ist das man einfach so zu workarounds rät ohne den User darauf hinzuweisen das man Fehler beobachten sollte. Später wird hier bei anderen Fehlern auch einfach nur ein Workaround gesetzt was m.E. schlechter Programmierstil ist.....
so seh ich das

... und damit wollte ich auch niemand auf die Füße treten ;)
 
Zuletzt bearbeitet:
Zurück