Brwoserweiche die eine Javascript und wenn nicht ein anders Bild anzeigt!

Jack198724

Grünschnabel
Hallo Leute

ich habe in diesem Forum und 100 mal in google gesucht aber mein problem besteh noch.

Also folgendes:

ich benutze Wordpress und in einem Widget möchte ich dass wenn User mit Firefox und IE unterwegs ist eine Javascript (Google adsense) anzeigt und mit allen anderen Browser (Chrome und Opera und ....) nur ein Bild anzeigt....

Warum ich das will, weil meine Anzeigen bei IE und Firefox gezegt werden aber allen anderen nicht angezeigt werden

Geht das überhaupt sowas?

Danke im Voraus
 
Hi,

Anscheinend hab ich meinen Post nicht schnell genug gelöscht, deshalb hier nochmal meine Anmerkungen, auf die du geantwortet hast zur Vollständigkeit:

- Mich hat es gewundert, dass ein Google Browser Probleme mit Google AdSense haben soll
- Warum sollte eine Browserweiche mit extra Code erstellt werden, wenn der Code eh nicht ausgeführt wird?

So, zurück zu deiner eigentlichen Frage :)
Auf die schnelle hab ich folgende Seiten gefunden: Browserweiche auf Wikipedia und Browserweichen mit Conditional Comments

Gruß,
BK
 
Du könntest auch den User-Agent aus den HTTP-Headers auslesen und dementsprechend den PHP-Code konditionieren:

Dafür gibts die PHP-Funktion get_browser().

Aussehen könnte das im PHP-Code so:

PHP:
$browser_identifiers = get_browser(null, true);
if($browser_identifiers['browser'] == 'Firefox' || $browser_identifiers['browser'] == 'IE')
{
  // TODO: Adsense anzeigen
}
else
{
  // TODO: Bild anzeigen
}
 
Naja, auf Anhieb fiele mir ein, dass man das Div, in welchem AdSense oder Bild liegt leer lässt und nach Browserweichenauswahl (in php eine Javascriptvariable füllen) mit diesem oder jenem Inhalt füllt.

Code:
<?php
$isAD=0;
$userAgent=$_SERVER['HTTP_USER_AGENT'];
if (strstr($userAgent, 'Opera')) { $isAD=0; }
if (strstr($userAgent, 'Internet Explorer')) { $isAD=1; }
echo "var istAd = ".$isAD."\n";
?>
if( istAd == 1 )
{ $('#adSenseBild').html('pack AdSense rein'); }
else
{ $('#adSenseBild').html('pack Bild rein'); };
Ich habe Funktionen aus jQuery genutzt. Hilft Dir das vielleicht weiter?

mfg chmee
 
danke fürs Antworten, also ich habe es wie du gesagt hast, so versucht:

PHP:
<?php  

$browser_identifiers = get_browser(null, true);
if($browser_identifiers['browser'] == 'Firefox' || $browser_identifiers['browser'] == 'IE')
{
<div align="center">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-*Weggemacht*";
/* 250 x 250 Oben-Rechts Perspolis */
google_ad_slot = "*Weggemacht*";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
}
else
{
<img src="http://www.perspolis-fan.com/wp-content/uploads/2011/12/perspolis_250.jpg">
}
?>


Leider ohne Erfolg :(

ich versuch mal das andere code
 
Hmm, versuch doch mal das:

PHP:
$browser_identifiers = get_browser(null, true);
if($browser_identifiers['browser'] == 'Firefox' || $browser_identifiers['browser'] == 'IE')
{
?>
<div align="center">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-*Weggemacht*";
/* 250 x 250 Oben-Rechts Perspolis */
google_ad_slot = "*Weggemacht*";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<?php
}
else
{
?>
<img src="http://www.perspolis-fan.com/wp-content/uploads/2011/12/perspolis_250.jpg">
<?php
}
 
@Saftmeister
Ist jene Funktion wirklich sicher und liest unter allen Bedingungen aus? Ich kenne sie noch nicht und sie klingt im Manual n bisschen schwammig.

@Jack
Saftmeisters letzter Code ist ok, der müsste einfach in jene Div, wo das Zeug drin sein soll. Mein Code braucht jQuery oder größeren JS-Code.

mfg chmee
 
Den Browser sollte die Funktion auf jeden Fall auslesen können. Grundsätzlich kann man $_SERVER['HTTP_USER_AGENT'] nach Firefox und MSIE durch suchen:

PHP:
<?php
if(stristr($_SERVER['HTTP_USER_AGENT'], 'Firefox') || stristr($_SERVER['HTTP_USER_AGENT'], 'MSIE'))
{
?>
<div align="center">
<script type="text/javascript"><!--
google_ad_client = "ca-pub-*Weggemacht*";
/* 250 x 250 Oben-Rechts Perspolis */
google_ad_slot = "*Weggemacht*";
google_ad_width = 250;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</div>
<?php
}
else
{
?>
<img src="http://www.perspolis-fan.com/wp-content/uploads/2011/12/perspolis_250.jpg">
<?php
}

Es ist deswegen schwammig formuliert, weil man einen UserAgent faken kann.
 
Was auch gegen jede Browserweiche spricht. Nein nein, was mir mehr Zweifel gebracht hat, war diese browscap.ini-Datei, die angesprochen wird. Aber vielleicht zweifle ich zu sehr, und jene Datei ist auch auf den ungepflegtesten Webhosts aktuell genug..

mfg chmee
 
Die browscab.ini ist lediglich eine Konfigurationsdatei in der die Eigenschaften bzw. Fähigkeiten stehen, die ein spezifischer Browser hat. get_browser() benutzt die Datei, um die Fähigkeiten zu evaluieren. Dazu muss der Browser bekannt sein. Dieser wird aus den HTTP-Headern geholt. Prinzipiell kann man regex oder String-Suche durchführen, wie oben beschrieben, oder man benutzt einfach get_browser() um an den Browser-Namen zu kommen. Für mehr würde ich das auch nicht verwenden. Es vereinfacht die Analyse der Browser-Identifikation. An den Fähigkeiten des Browsers (Capabilitites) bin ich an dieser Stelle nicht interessiert.
 

Neue Beiträge

Zurück