php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 15-03-2011, 10:07
webdesignberlin
 Registrierter Benutzer
Links : Onlinestatus : webdesignberlin ist offline
Registriert seit: Mar 2011
Beiträge: 4
webdesignberlin befindet sich auf einem aufstrebenden Ast
Standard Mobile Switch / Redirect

Hallo, ich habe ein Problem. Folgenden Code nutze ich für eine Weiterleitung auf meine Mobile Variante:
PHP-Code:
<?
$isMobile 
false;
$isBot false;

$op strtolower($_SERVER['HTTP_X_OPERAMINI_PHONE']);
$ua strtolower($_SERVER['HTTP_USER_AGENT']);
$ac strtolower($_SERVER['HTTP_ACCEPT']);
$ip $_SERVER['REMOTE_ADDR'];

$isMobile strpos($ac'application/vnd.wap.xhtml+xml') !== false
        
|| $op != ''
        
|| strpos($ua'sony') !== false 
        
|| strpos($ua'symbian') !== false 
        
|| strpos($ua'nokia') !== false 
        
|| strpos($ua'samsung') !== false 
        
|| strpos($ua'mobile') !== false
        
|| strpos($ua'wap1.') !== false
        
|| strpos($ua'wap2.') !== false;

        
$isBot =  $ip == '66.249.65.39' 
        
|| strpos($ua'googlebot') !== false 
        
|| strpos($ua'chtml generic') !== false
        
|| strpos($ua'nokia6230i/. fast crawler') !== false;
        
if(
$isMobile){
    
header('Location: /mobile/');
    exit();
}
?>
Das Problem ist, das ich leider nicht in der Lage bin, von der Mobilen auf die Desktop Variante zu linken, ohne das ich sofort zurück geschmissen werde. Ich leite im Moment von der Mobilen per Link auf nen Cookie der Weiterleitet:

PHP-Code:
<?php
$appname 
"seilermobile";
setcookie("DV"$appnametime()+60*60*24*365);

session_start();
$_SESSION['DV'] = true;
header('Location: http://normale-version.com');
?>
Kann mir jemand sagen wie ich das hinbekomme, dass ich von der Mobilen auf die Desktop komme ohne gleich immer wieder weitergeleitet zu werden?

mein gedanke war nun zu sagen
wenn du ismobile bist und den cookie DV nicht besitzt, dann gehe auf mobile- aber das bekomme ich nicht gebacken, ich dachte das geht so:

PHP-Code:
if($isMobile) && ($_COOKIE['DV'] != 'true'){header('Location: /mobile/');
    exit();

funktioniert nur leider nicht
Beste Grüße

Geändert von webdesignberlin (15-03-2011 um 11:10 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 15-03-2011, 12:27
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Session und Cookie? Entweder willst du es nur für diesen Besuch, dann Session, oder du willst es als quasi-dauerhafte Einstellung, dann Cookie. Beides zusammen ist Käse.

Und bei dem letzten Code-Schnipsel fehlen Klammern um die If-Bedingungen. ;-)
Mit Zitat antworten
  #3 (permalink)  
Alt 15-03-2011, 13:55
webdesignberlin
 Registrierter Benutzer
Links : Onlinestatus : webdesignberlin ist offline
Registriert seit: Mar 2011
Beiträge: 4
webdesignberlin befindet sich auf einem aufstrebenden Ast
Standard

Danke für die Antwort, was wäre denn sinnvoller? Wahrscheinlich ein Cookie oder?

du meist so?
PHP-Code:
if{($isMobile) && ($_COOKIE['DV'] != 'mobilecookie')}{header('Location: /mobile/');
    exit();

und bei der cookie.php die session weg?
PHP-Code:
 <?php
$appname 
"mobilecookie";
setcookie("DV"$appnametime()+60*60*24*365);
header('Location: http://normale-version.com');
?>
Mit Zitat antworten
  #4 (permalink)  
Alt 15-03-2011, 14:19
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Runde Klammern!
Mit Zitat antworten
  #5 (permalink)  
Alt 15-03-2011, 17:18
webdesignberlin
 Registrierter Benutzer
Links : Onlinestatus : webdesignberlin ist offline
Registriert seit: Mar 2011
Beiträge: 4
webdesignberlin befindet sich auf einem aufstrebenden Ast
Standard

ups, ja falsche klammern:
PHP-Code:
if(($isMobile) && ($_COOKIE['DV'] != 'mobilecookie')){
    
header('Location: /mobile/');
   exit(); 
mein browser hat auch den Cookie gespeichert, jedoch leitet er immer noch auf den Pfad /mobile weiter. Hab ich einen Denkfehler?
Ich sage doch gerade: Wenn du ein mobiles Gerät bist, und einen Cookie DV hast ungleich mobilcookie, dann leite weiter. Aber ich habe doch einen Cookie der DV = mobilecookie ist, dann dürfte er mich doch nicht weiterleiten oder?
Mit Zitat antworten
  #6 (permalink)  
Alt 16-03-2011, 10:27
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Wenn
PHP-Code:
(($isMobile) && ($_COOKIE['DV'] != 'mobilecookie')) 
wahr wird, kann das nur zwei Ursachen haben: Entweder ist $isMobile false oder $_COOKIE['DV'] hat nicht den Wert "mobilecookie".

Beides lässt sich mit var_dump() leicht herausfinden. ;-)
Mit Zitat antworten
  #7 (permalink)  
Alt 18-03-2011, 07:30
webdesignberlin
 Registrierter Benutzer
Links : Onlinestatus : webdesignberlin ist offline
Registriert seit: Mar 2011
Beiträge: 4
webdesignberlin befindet sich auf einem aufstrebenden Ast
Standard

hmmm, ich glaube das funktioniert alles nicht. der cookie wird schon gesetzt, leider scheint wordpress diesen nicht zu erkennen -.-
Mit Zitat antworten
  #8 (permalink)  
Alt 18-03-2011, 11:31
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Ich kenne Wordpress nicht so genau. Es könnte eine Sicherheitsvorkehrung sein. Vielleicht entfernt WP alle Superglobals, die es nicht kennt. Wenn das so ist, gibt es aber bestimmt eine WP-Methode, das Cookie zu setzen. Schon mal nach Wordpress + Cookie gegoogelt?
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
cookie, header, mobile, redirect


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mobile Applikationen someRookie Off-Topic Diskussionen 3 12-12-2009 22:25
große Mobile Berni Out of Order 1 27-03-2008 19:12
mobile navigation Abraxax Off-Topic Diskussionen 10 09-06-2007 23:37
Mobile PHP Documentation nevermind Webmaster 1 17-06-2006 20:42
switch case mit unter switch switch case funzt nicht ?!! wieso ? HIlfe Vollgas U PHP Developer Forum 3 27-08-2003 13:12

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:22 Uhr.