Mobile-Erkennung

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Mobile-Erkennung

Beitrag von mps »

Hallo zusammen,

ich habe mit Hilfe eines Tutorials im Web (http://my-websites.de/mobile-browser-per-php-erkennen/) ein PHP-Script erstellt, welches erkennt, ob ein User im Board mit Handy online ist oder nicht.

Wie kriege ich es nun hin, dass ich den Code auf der Seite, der übrigens auch hervorragend geht, so in PHPBB einbinden kann, dass ich in der Template-Datei das hier haben kann, wenn ich will:

Code: Alles auswählen

<!-- IF S_USER_MOBILE -->
Blubb
<!-- ENDIF -->
<!-- IF not S_USER_MOBILE -->
bLUBB
<!-- ENDIF -->
Danke sehr.

Gruß,
mps
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Mobile-Erkennung

Beitrag von Miriam »

Wenn Du das so machen möchtest, solltest Du in der /includes/functions.php eine neue überall verfügbare Templatevariable erstellen, die wahr ist, falls es sich um einen mobilen User handelt und falsch, wenn nicht.

Das Template Konstrukt sollte prinzipiell so aussehen:

Code: Alles auswählen

IF Variable 
Anweisung A
ELSE
Anweisung B
ENDIF
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: Mobile-Erkennung

Beitrag von mps »

Auf die functions.php bin ich auch schon gekommen, jedoch weiß ich nicht wo genau ich den Code einfügen muss, ohne dass mein Board gleich wiedet nicht geht...

Danke sehr.

Gruß,
Mps
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Mobile-Erkennung

Beitrag von Miriam »

Wer nicht wagt...

Hier hast Du mal eine prinzipielle Vorgehensweise für Dein Problem. http://mymods.lifestyle-dream.de/viewto ... ?f=13&t=71
Also eigentlich ist es genau das, was Du suchst. Nur mit einer anderen Funktion und anderen Variablennamen.
Hier im Forum solltest du auch fündig werden.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Mobile-Erkennung

Beitrag von HabNurNeFrage »

Hi,

schätzungsweise eine ähnliche Vorgehensweise wie hier: viewtopic.php?f=74&t=231307&p=1322533#p1322504 :wink:

Die Funktion (Stelle hat BlackHawk genannt)

Code: Alles auswählen

// Funktion zur Erkennung vieler mobiler Browser
function find_mobile_browser() {
    if(preg_match('/(iPhone|iPad|iPod|Android|blackberry|webOS|xda|zte|htc)/i', $_SERVER['HTTP_USER_AGENT'])) {
        return true;
    } else {
        return false;
    }
}

$mobile_browser = find_mobile_browser();
Die Template-Variable fürs Array: 'S_USER_MOBILE' => $mobile_browser,

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: Mobile-Erkennung

Beitrag von mps »

Hallo,

es kam leider, wie es kommen musste:
Fatal error: Cannot redeclare find_mobile_browser() (previously declared in /home/webpages/lima-city/epboard/html/site/test4ever/includes/functions.php:4644) in /home/webpages/lima-city/epboard/html/site/test4ever/cache/tpl_subsilver2_overall_header.html.php on line 8
Habe den langen Code vor dem Array eingefügt und den kleinen in das Array. In der Template steht jetzt:

Code: Alles auswählen

<!-- IF S_USER_MOBILE -->
Code, wenn mobil unterwegs
<!-- ELSE -->
Code, wenn nicht mobil unterwegs
<!-- ENDIF -->
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: Mobile-Erkennung

Beitrag von HabNurNeFrage »

Hi,

jede Funktion darf nur einmal mit dem selben Namen definiert sein.
Also 1x raus oder Deine Datei nicht includen, wenn die Funktion auch noch quasi global in der functions.php eingetragen ist...

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: Mobile-Erkennung

Beitrag von mps »

Hallo,

ich habe das Problem lösen können, indem ich die Cache-Datei verändert habe und dann somit ins ACP gehen konnte, um den Template-Cache zu löschen.

Vielleicht eine Idee für PHPBB 3.1.0, eine Art "safemode" einzufügen.

Gruß,
mps

Edit: Danke @HabNurNeFrage
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: Mobile-Erkennung

Beitrag von Miriam »

Falls noch einmal eine solche Problematik auftreten sollte -> wirf mal einen Blick auf die PHP Funktion function_exists() -> http://www.php.net/manual/de/function.f ... exists.php
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“