php.de

Zurück   php.de > php.de Intern > Beitragsarchiv

Beitragsarchiv Nur gucken, nichts anfassen. Das Archiv der Beiträge vergangener Zeiten.

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.02.2006, 09:49  
Erfahrener Benutzer
 
Registriert seit: 23.05.2005
Beiträge: 376
scooter
scooter eine Nachricht über ICQ schicken
Standard Extrem einfache Browserweiche

Ich suche eine extrem einfach Browserweiche in PHP. Soll nur ne kurze if sein, indem kontrolliert wird ob IE oder FF. Brauche keine Versionen und nix... Weiß nur nicht wie ich den string von HTTP_USER_AGENT richtig bearbeite...

Beispiel:

[php]
<?
if($browser == "IE"){
echo "IE";
}else{
echo "anderer Browser";
}
?>
__________________
Life is Life and life is hard
scooter ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.02.2006, 09:50  
Erfahrener Benutzer
 
Benutzerbild von dsmcg
 
Registriert seit: 11.10.2005
Beiträge: 2.405
dsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäredsmcg sorgt für eine eindrucksvolle Atmosphäre
Standard

PHP-Code:
<?
//        _______
// ----- | CONF. |
//        �������
// add new browsers in lower case here, separated
// by spaces -  order is important: from left to
// right browser family becomes more precise
$browsers "mozilla msie gecko firefox ";
$browsers.= "konqueror safari netscape navigator ";
$browsers.= "opera mosaic lynx amaya omniweb";

//        _______
// ----- |PROCESS|
//        �������
$browsers split(" "$browsers);

$nua strToLower$_SERVER['HTTP_USER_AGENT']);

$l strlen($nua);
for (
$i=0$i<count($browsers); $i++){
  
$browser $browsers[$i];
  
$n stristr($nua$browser);
  if(
strlen($n)>0){
   
$GLOBALS["ver"] = "";
   
$GLOBALS["nav"] = $browser;
   
$j=strpos($nua$GLOBALS["nav"])+$n+strlen($GLOBALS["nav"])+1;
   for (; 
$j<=$l$j++){
     
$s substr ($nua$j1);
     if(
is_numeric($GLOBALS["ver"].$s) )
     
$GLOBALS["ver"] .= $s;
     else
     break;
   }
  }
}

//        _______
// ----- |  USE  |
//        �������
echo("<pre>Your browser is: ");
echo(
$GLOBALS["nav"] . " " $GLOBALS["ver"] . "</pre>");
?>
und dann eine IF abfrage.

-> http://de.php.net/manual/de/function.get-browser.php
__________________
Wie man Fragen richtig stellt
dsmcg ist offline  
Alt 08.02.2006, 10:04  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

http://www.apptools.com/phptools/browser/
Corvin ist offline  
Alt 08.02.2006, 10:23  
Erfahrener Benutzer
 
Registriert seit: 23.05.2005
Beiträge: 376
scooter
scooter eine Nachricht über ICQ schicken
Standard

Ich hatte an sowas gedacht, hab es ja jetzt^^ Aber so einfach kann essein^^

PHP-Code:

<?
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') ){
mach dies
} else {
mach das
}
?>
Das reicht schon *ggg*
__________________
Life is Life and life is hard
scooter ist offline  
Alt 08.02.2006, 11:39  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Es sollte

PHP-Code:
<?php
if (strpos(..) !== false) {
  
//..
?>
heißen.
Zergling-new ist offline  
Alt 08.02.2006, 11:43  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

!==
Corvin ist offline  
Alt 08.02.2006, 12:00  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Ja, denn strpos liefert ja die Stringposition. Diese kann natürlich auch 0
sein, nämlich wenn der gesuchte String gleich am Anfang steht.
Wenn der Suchstring aber nicht im Hauptstring vorkommt, wird false
zurückgegeben.

Anders als mit !== false kannst du also nicht unterscheiden, ob nun eine 0
(Treffer an Position 0) oder ein false (kein Treffer) zurückgegeben
wurde.

Siehe
http://de.php.net/strpos
Zitat:
Anmerkung: Die Meldungen "Zeichen bei Position 0 gefunden
(character found at position 0)" und "Zeichen nicht gefunden (character not
found)" werden oft falsch ausgelegt. Hier die Unterscheidung:
Zergling-new ist offline  
Alt 08.02.2006, 12:02  
Erfahrener Benutzer
 
Registriert seit: 23.05.2005
Beiträge: 376
scooter
scooter eine Nachricht über ICQ schicken
Standard

Ok denn von mir aus auch so:

PHP-Code:
<? 
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false){ 
mach dies 
} else { 
mach das 

?>
EDIT: Ich hab nix gesagt...
__________________
Life is Life and life is hard
scooter ist offline  
Alt 08.02.2006, 12:04  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Zergling
Ja, denn strpos liefert ja die Stringposition. Diese kann natürlich auch 0
sein, nämlich wenn der gesuchte String gleich am Anfang steht.
Wenn der Suchstring aber nicht im Hauptstring vorkommt, wird false
zurückgegeben.

Anders als mit !== false kannst du also nicht unterscheiden, ob nun eine 0
(Treffer an Position 0) oder ein false (kein Treffer) zurückgegeben
wurde.
Ahh.. stimmt. Ist ja das gleiche wie == und ===, nur !== kannte ich noch nicht. Wieder was Neues gelernt.
Corvin ist offline  
Alt 08.02.2006, 14:09  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 646
Magic befindet sich auf einem aufstrebenden Ast
Standard

Also ich hab da mal eine sehr einfache Browserweiche erstellst. Funktioniert eigentlich auch, ist aber nicht so ausgefeilt wie die anderen Beispiele

PHP-Code:
function ie_check()
{
    
### Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

    
$browser $_SERVER['HTTP_USER_AGENT'];

    if (
preg_match("/MSIE/i"$browser))
    {
        return 
TRUE;
    }
    else
    {
        return 
FALSE;
    }

Gibt bei einem Internet Explorer TRUE aus, bei anderen Browsern FALSE
Magic ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Einfache Jobverwaltung daveu77 Scriptbörse 3 22.05.2008 07:30
Einfache Datei mit automatischer mail-sendung? starmm2007 PHP Tipps 2008 1 06.11.2007 13:35
einfache blätterfunktion gesucht miwo PHP Tipps 2008 30 04.09.2007 14:21
Datenschema für einfache Programmabläufe Basti Off-Topic Diskussionen 9 01.03.2006 11:50
JavaScript: einfache Art zu prüfen ob Obj = FormObj? HStev HTML, Usability und Barrierefreiheit 7 25.01.2006 20:08
Einfache Datenbank - mit Dropdownmenu - jemand ne ahnung? PHP Tipps 2005-2 6 31.08.2005 18:03
einfache oder doppelte Anführungszeichen? PHP Tipps 2005-2 35 24.08.2005 17:29
einfache Kategoriestruktur und deren Zuordnung... PHP Tipps 2005 1 20.04.2005 12:24
Gesucht : Einfache Fotogallerie Beitragsarchiv 2 14.02.2005 12:11
einfache Suchfunktion kampfnickel PHP Tipps 2005 3 26.01.2005 15:32
Programmierer für einfache kleinere PHP/MySql Arbeiten gesuc Beitragsarchiv 4 10.01.2005 20:01
browserweiche PHP Tipps 2005 4 10.01.2005 14:19
[Erledigt] gibt es eine ganz einfache loesung??? fremdverlinkung PHP Tipps 2004 9 04.11.2004 20:29
einfache Frage... PHP Tipps 2004 6 27.06.2004 13:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
einfache browserweiche, browserweiche preg_match, browserweiche ie php, browserweichen firefox windows, php browserweiche ie versionen, php browserweiche ie6, browserabfrage opera, preg_match browserweiche, php browserweiche ie, browserweiche <!--[if ff]>, einfache php weiche, ie browserweiche php, einfache browserweiche ie, einfache browserweiche php, einfache php browserweiche, browserabfrage php ie6, browserweiche pregmatch, browserweiche $http_user_agent ie6, php ie weiche, browserweiche ie preg_match

Alle Zeitangaben in WEZ +1. Es ist jetzt 08:36 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.