Problem: Browsererkennung (PHP+JavaScript)

Master-T

Grünschnabel
PHP:
<?
session_start();
if ($_SESSION['ip'] == $_SERVER['REMOTE_ADDR'])
{
$s_s_a=1;
}
else
{
$s_s_a=0;
}
$browsercheck="
<SCRIPT language=\"JavaScript\">
<!--
var browserName=navigator.appName;
if (browserName==\"Netscape\")
{
 $s_s_a=1;
}
else
{
 if (browserName==\"Microsoft Internet Explorer\")
 {
  $s_s_a=1;
 }
 else
  {
    $s_s_a=0;
   }
}
//-->
</SCRIPT>";
echo("$browsercheck");
?>

Das problem ist das $s_s_a auch noch 1 ist wenn man den script mit Mozilla startet (bei ie ist $s_s_a auch 1).
Was hab ich falsch gemacht?
Danke schonmal im voraus für die hilfe.

MfG T
 
Erstmal ist das ziemlich schlechter Stil.

Dann: Was willst du bewirken?
Ist $s_s_a nun eine JavaScript-Variable, oder eine PHP?
Falls es eine PHP sein soll: Du kannst nur von PHP nach JavaScript Daten übergeben, nicht andersrum.

Mach es ungefär so: (Dann hast du die JavaScript-Variable s_s_a:
PHP:
<?php
session_start();
if ($_SESSION["ip"] == $_SERVER["REMOTE_ADDR"]) {
  $s_s_a=1;
} else {
  $s_s_a=0;
}

?><script type="text/javascript">
<!--
var browserName = navigator.appName;
var s_s_a;

if (browserName == "Netscape") {
  s_s_a=2;
} else {
  if (browserName == "Microsoft Internet Explorer") {
    s_s_a=1;
  } else {
    s_s_a=0;
  }
}
//-->
</script>

Und AFAIK gibt sich der Mozilla in dem Fall als Netscape aus!

Ps: Sorry, aber bei dem Stil wird einem Übel...
 
Also gleich doppelt ********, ich include nämlich diese datei nur um die seite zu sperren wenn die ip nicht mit der session ip übereinstimmt oder wenn der browser mozilla ist, und wie stell ich das jetzt an oder kann ich das gleich vergessen?

MfG T
 
Doch, du kannst auch mit PHP den Browser rausfinden:
PHP:
$browser = getenv("HTTP_USERAGENT");

Also vergess bei sowas (Seite sperren) am besten gleich wieder JavaScript.
 
ok *sich jetzt mal dumm anstellt weil er diesen teil von php leider überflogen hat oder er nicht im tut stand*.
Und wie lautet dann der titel von Mozilla oder muss ich Netscape auch noch sperren (was sehr schade währe).

MfG T
 
Original geschrieben von Master-T
[...] um die seite zu sperren [...] wenn der browser mozilla ist [...]
Ähem, wie bitte?

Browsersperren sind nicht nur vollkommen überflüssig, sondern auch eine Zumutung für Benutzer dieser Browser. Oder hast du wenigstens vor, eine alternative Seite anzubieten, wenn schon keine Seite in vernünftigem HTML (oder was ist der Grund für die Sperre?) hinzubekommen ist.

Aber mir soll's egal sein. Ist ja auch nicht direkt das Thema...

EDIT:
Und wie lautet dann der titel von Mozilla oder muss ich Netscape auch noch sperren (was sehr schade währe).
Dir ist schon klar, dass jede Netscape Version auf einer zum Zeitpunkt des Erscheinens aktuellen Mozilla Engine basiert?

Fluke
 
Zuletzt bearbeitet:
Fulke das hat einen grund den ich hier wohl nicht weiter erleutern muss auf jeden fall ist es sehr wichtig das der browser mozilla gesperrt wird (ich hab keine andere wahl wenn das nicht hinhaut kann ich die webseite wohl offline stellen :( ).

Außerdem kommt da nichts raus:

PHP:
$browser = getenv("HTTP_USERAGENT");
echo("Browser: $browser");

MfG T
 
Zuletzt bearbeitet:
Zurück