Wechsel von der mobilen Version zur vollständigen Website (Desktop Version)

8

Ich verwende diesen Code, um die Benutzer von der Desktop-Version auf meine mobile Website zu leiten.

%Vor%

Ich möchte den Benutzern die Möglichkeit geben, von der mobilen Website auf die Desktop-Version zurück zu wechseln, aber dieser Code leitet sie zurück zur mobilen Website. Ich habe mich gefragt, ob ich eine if-Anweisung erstellen kann, um den Browser dazu zu zwingen, auf dieser Seite zu bleiben. Zum Beispiel, wenn ich von der mobilen Website über www.mywebsite.com?device=desktop zurückverbinden und den Code ändern kann, um die URL zu erkennen. Meine PHP-Kenntnisse sind begrenzt, so dass jede Hilfe sehr geschätzt werden würde.

LÖSUNG:

** Ich habe versucht, die Sitzungsfunktion so zu verwenden, wie es in Kommentaren vorgeschlagen wurde, aber ich hatte Probleme mit mobilen Geräten. es schien, dass einige mobile Browser Sitzung nicht sehr gut behandeln.

** Ich habe stattdessen Cookie und mit Hilfe dieses Beitrags verwendet war in der Lage, das Problem zu lösen. Unten ist der Code, den ich benutze.

** HINWEIS: Sie können den Erkennungscode und die Zeit für setcookie an Ihre Bedürfnisse anpassen

%Vor%

Und Sie können diesen Code verwenden, um den Cookie zu erstellen

%Vor%     
PersianBoy67 03.07.2012, 16:08
quelle

2 Antworten

4

Wenn der Benutzer auf den Link "Vollständige Site" klickt, können Sie eine Variable an PHP übergeben, indem Sie ihn an die URL anhängen. Hier sehen Sie ein Beispiel für den HTML-Link auf der mobilen Website:

%Vor%

In PHP wird die übergebene Variable in $_GET['v'] gespeichert ('v' steht für Version, aber die Benennung ist beliebig). In Ihrem PHP-Code müssen Sie zunächst prüfen, ob $_GET['v'] überhaupt gesetzt ist. Wenn festgelegt ist, müssen Sie überprüfen, ob es auf "Desktop" eingestellt ist. Wenn beide Werte zutreffen, sollten Sie eine -Sitzung -Variable festlegen, damit die Benutzer beim Aktualisieren der Seite nicht erneut zur mobilen Site weitergeleitet werden.

Jetzt müssen Sie die Sitzungsvariable überprüfen, um zu sehen, ob Sie den Benutzer umleiten sollten. Auch hier müssen Sie zunächst überprüfen, ob $_SESSION['v'] überhaupt gesetzt ist. Wenn nicht festgelegt ist, sollten Sie den Benutzer umleiten. Wenn festgelegt ist, müssen Sie überprüfen, ob es auf "Desktop" eingestellt ist. Wenn nicht auf "Desktop" eingestellt ist, sollten Sie den Benutzer umleiten. So würde der Code aussehen:

%Vor%

Eines der schönen Dinge an PHP ist, dass es Sessions für Sie erledigt, aber Sie müssen PHP explizit dazu anweisen. Dazu verwenden Sie die Funktion session_start() oben auf der Seite , die Teil der Sitzung sein muss. In diesem Fall benötigen Sie eine session_start() -Anweisung oben auf der Seite der Desktopseite sowie auf der Seite der mobilen Website.

    
David 06.07.2012 16:47
quelle
0
%Vor%

Mit $ _GET können Sie die Variablen in Ihrem query_string (die? Hallo = foo & amp; bar = Welt mit URLs) bekommen. Mit $ _GET ['device'] können Sie explizit den? Device = desktop.

verwenden

Wir fragen: Wenn die Variable nicht gesetzt ist oder die Variable nicht Desktop ist (wenn sie gesetzt ist), leiten wir auf die mobile Seite um.

BEARBEITEN: Um dies zu verbessern, können Sie GET in einer SESSION-Variablen speichern (Sitzungen werden beim Öffnen einer Seite gestartet und nur beim Schließen des Browsers gelöscht):

Fügen Sie einfach einen Teil hinzu und ändern Sie den Code:

%Vor%     
WolvDev 03.07.2012 16:16
quelle

Tags und Links