• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

PSP Browser-Erkennung

Status
Für weitere Antworten geschlossen.

assmaje

Neues Mitglied
Hi, :)

Ich möchte, dass meine Seite nicht nur auf dem PC zu erreichen ist, sondern auch auf der PSP. Da meine Webseite sehr flexibel ist, wird sie schon jetzt fast genau so wie auf dem PC angezeigt, allerdings möchte ich doch lieber noch eine individuelle PSP-Version.

Ich habe einen PHP-Code gefunden, der bei Aufruf meiner Seite (index.php) auf eine andere Datei umleitet (z. B. pspindex.php). Nun möchte ich aber nur ein zweites Stylesheet und keine zweite Seite. Weiß jemand, wie man diesen Code entsprechend umformen kann? Dürfte eigentlich ziemlich einfach sein, bin aber noch blutiger Anfänger in PHP. :(

Code:
<? 
if ($name = strstr ($HTTP_USER_AGENT, "PlayStation Portable")) 
{ 
  //PSP-Version 
  Header ("Location: http://www.meineseite.com/psp-version.html"); 
  echo "<b>PSP-Browser erkannt!</b>"; 
} 
?>

Wäre unendlich dankbar für Antworten. ;)
 
eigentlich ganz einfach,

der stylesheet wird ja im header definiert, also musst du dort dafür sorgen, dass der stylesheet umgeschaltet wird:

Code:
<? 
if ($name = strstr ($HTTP_USER_AGENT, "PlayStation Portable")) 
{ 
  echo "<link rel="stylesheet" type="text/css" href="psp_style.css">"; 
}
else
{
  echo "<link rel="stylesheet" type="text/css" href="standard_style.css">"; 
} 
?>
 
Klingt einleuchtend, aber irgendwie hat einer von uns was falsch gemacht: :?:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<HTML>
<HEAD>
<TITLE>www.pspmedia.de.nr | Home</TITLE>

<?
if($name = strstr ($HTTP_USER_AGENT, "PlayStation Portable"))
{
  //PSP-Version
  echo "<link rel="stylesheet" type="text/css" href="style.css">";
}
else
{
  //PC-Version 
  echo "<link rel="stylesheet" type="text/css" href="style_psp.css">"
}
?>

</HEAD>
<BODY>

...

Du kannst den Fehler auch live in meiner Signatur sehen. ;)
 
Zuletzt bearbeitet:
PHP:
<?
if($name = strstr ($HTTP_USER_AGENT, "PlayStation Portable"))
{
  //PSP-Version
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">";
}
else
{
  //PC-Version 
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style_psp.css\">"
}
?>

Btw. würde ich nicht damit arbeiten, da das meines Wissens nach eine globale Variable ist und register_globals normaler weise auf off stehen sollte. Arbeite lieber mit der Variable / Array-Feld $_SERVER['HTTP_USER_AGENT'] oder direkt mit der funktion get_browser();

PHP: get_browser - Manual
 
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<HTML>
<HEAD>
<TITLE>www.pspmedia.de.nr | Home</TITLE>

<?php
if($name = strstr ($HTTP_USER_AGENT, "PlayStation Portable"))
{
  //PSP-Version
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">";
}
else
{
  //PC-Version
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style_psp.css\">"
}
?>

</HEAD>
<BODY>

Danke, geht aber immer noch nicht... :(
 
Erstell ma ne php Datei und schreibfolgendes rein:

PHP:
<?
echo $HTTP_USER_AGENT;
?>

Dann weißte den genauen Useragent und kannst diesen in die Abfrage einsetzen.
 
OMFG, da steht ja echt was! D:

Code:
Mozilla/4.0 (PSP (PlayStation Portable); 2.00)

Und jetzt? Der Fehler sieht übrigens so aus:

Code:
Parse error: syntax error, unexpected '}', expecting ',' or ';' in /usr/export/www/vhosts/funnetwork/hosting/assmaje/index.php on line [COLOR="Red"][B]x[/B][/COLOR]
 
Zuletzt bearbeitet:
Dachte ich es mir doch, im Internet hab ich nämlich auch immer diesen Useragent gefunden.

Zu der Fehlermeldung: Ja, ich hab nen Semikolon vergessen. Versuch ma folgendes Beispiel:

PHP:
<? 
if($name = strstr ($HTTP_USER_AGENT, "Mozilla/4.0 (PSP (PlayStation Portable); 2.00)")) 
{ 
  //PSP-Version 
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\">"; 
} 
else 
{ 
  //PC-Version 
  echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"style_psp.css\">";
} 
?>


Wenn das nicht gehen sollte machst du mal folgendes:

Erstellst wieder eine PHP Datei, schreibst folgendes rein und gehst mit der PSP auf diese Seite

PHP:
<?php
$browser = get_browser(null, true);
print_r($browser);
?>


Und schreibst uns, was hiner folgenden Feldern steht:

- [browser]
- [platform]

Das wären nun andere Punkten, die man Abfragen könnte, um dein Stylesheet für die PSP auszugeben.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben