Siden også til mobil

Tags:    php javascript

<< < 12 > >>
Hej


Jeg har siddet og tænkt på om man ikke kan bygge på en måde sådan at man lave noget if og else på om den er på mobil eller den ikke er.

Tænkt lidt på hvis jeg vil ind på via mobil og vil se på siden så den gå over til www.m.blabla.dk som er til mobil og hvis man ikke er på mobil så bliver den bare på blabla.dk


F.eks lige sådan her;

Fold kodeboks ind/udJScript kode 


Fundet her;

Den skal bare på en måde finde ud af om man er på mobil eller på computer. og det skal også være sådan at hvis man vil gå via computer og prøve komme ind på mobil siden via computer så skal den bare smide mig over til den rigtigt side.


Håber nogle kan hjælp mig :)

Spørger hvis du ikke lige forstå mig :)




19 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Hvis du laver dit eget responsive design, kan du jo styre hvordan din mobile udgave skal se ud uden at lave et helt nyt design. Men det styrer du selv.


Ja, ved godt der kan være fordel ved det osv :) men jeg vil kigge på det som Ronney skrive omkring at send folk videre :)



jeg klippede lidt i min code fra eksperten

i toppen af din index.php på http://vlavla.dk ligger du denne code ind (utested)
Fold kodeboks ind/udKode 

man kunne evt ligge resultatet af browser_selector() i en session, så resultatet er tilgængelig på tværs af alle sider

browser_selector.php (utested)
Fold kodeboks ind/udKode 

coden til af finde browser kan du fjerne hvis du ikke har behov for at kende browseren






jeg klippede lidt i min code fra eksperten

i toppen af din index.php på http://vlavla.dk ligger du denne code ind (utested)
Fold kodeboks ind/udKode 

man kunne evt ligge resultatet af browser_selector() i en session, så resultatet er tilgængelig på tværs af alle sider

browser_selector.php (utested)
Fold kodeboks ind/udKode 

coden til af finde browser kan du fjerne hvis du ikke har behov for at kende browseren





Forstå ikke lige helt hvad du mener med det hele i den her kode?. og hvad der er formål ved den? :)


Kan jeg ikke også gøre noget i den her still:

Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 24.12.2012 15:46 af Bruger #17136
functionen browser_selector() retunerer et associative array der har følgende nøgler:
['browser'], ['browserversion'], ['os']

nøglen os er pt den eneste du skal bruge, men browser og browservertion kan du muligvis bruge senere

Fold kodeboks ind/udKode 

søger i useragentstring (HTTP_USER_AGENT), om ordet j2me er i, hvis den er, er os et mobilt os, ellers tester jeg om næste ord er i stringen, og gør det sammen

det er grundlæggende det sammen som det "Daniele Buttigli @ 24.12.12 12:38" linker til, bare med mulighed for mere detaljerings grad
Daniele's har bare ennu flere med, så en sammenskrivning kunne være på sin plads

Fold kodeboks ind/udKode 

her bruges bare preg_match til at søge med, da det giver andre muligheder, bla. anvendelse af regulære udtryk, og opdeling i array


'/opera|webtv/i' => indeholder stringen "opera" eller "webtv" ?? stringen er ikke følsom over for store/små borgstaver
/msie\s(\d)/ => der skal søges efter "/msie" der skal efterfølges af en string, der skal efterfølges af ( og et tal )
der anvendes / til at afgrænse start/slut af udtrykket, man kan dog anvende andre tegn
kunne feks se sådan ud '#opera|webtv#i', hvilke man typisk gør hvis / indgår som en del af udtrykket, alternativt skal man escape / hvilke også er meget brugt


Kan jeg ikke også gøre noget i den her still:

jo, borset fra du kun bør convaterer til lowercase en gang, og der rigtig mange mobiler, og som du også kan se af den liste Daniele linkede til.
det smarte ved en function er at det er nemt at genbruge, andre steder, og kun skal vedligeholdes et sted
så napper vi den function Daniele linkede til vil din code se sådan ud:

Fold kodeboks ind/udKode 




den virker ikke jeg har prøve alt muligt og den gider ikke.. xD



Indlæg senest redigeret d. 24.12.2012 19:28 af Bruger #17136
kan du ikke vise hvordan du anvender coden, jeg har afprøvet nedenstående, og det virker.
du kan se de 2 test user agent stringe jeg har tested med, 1 mobil og 1 desktop

Fold kodeboks ind/udKode 





kan du ikke vise hvordan du anvender coden, jeg har afprøvet nedenstående, og det virker.
du kan se de 2 test user agent stringe jeg har tested med, 1 mobil og 1 desktop

Fold kodeboks ind/udKode 


Åååhh derfor jeg har ikke brugt eller sæt $ua ind i if ting ;)





Åååhh derfor jeg har ikke brugt eller sæt $ua ind i if ting ;)

det er heller ikke nødvendigt, hvis der ikke sendes en ua (user agent) med henter den selv browserens au, men da jeg ikke har en smart phone at teste med må jeg simulerer dens ua.
det ville også være for meget forlangt at skulle teste med de rigtige smart phones, når der er så mange forskællige.

if(detect_mobile($ua) ) => anvender den medsendte ua
if(detect_mobile() ) => anvender den ua browseren sender ($_SERVER['HTTP_USER_AGENT'])


alternativ kan man simulerer en "rigtig" iphone på
http://iphonetester.com/
http://www.testiphone.com/
men jeg har ikke lige tested den ua om det er den rigtige

jeg kan jo også simulerer ua med user-agent-switcher
https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/
https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg




Åååhh derfor jeg har ikke brugt eller sæt $ua ind i if ting ;)

det er heller ikke nødvendigt, hvis der ikke sendes en ua (user agent) med henter den selv browserens au, men da jeg ikke har en smart phone at teste med må jeg simulerer dens ua.
det ville også være for meget forlangt at skulle teste med de rigtige smart phones, når der er så mange forskællige.

if(detect_mobile($ua) ) => anvender den medsendte ua
if(detect_mobile() ) => anvender den ua browseren sender ($_SERVER['HTTP_USER_AGENT'])


alternativ kan man simulerer en "rigtig" iphone på
http://iphonetester.com/
http://www.testiphone.com/
men jeg har ikke lige tested den ua om det er den rigtige

jeg kan jo også simulerer ua med user-agent-switcher
https://addons.mozilla.org/en-US/firefox/addon/user-agent-switcher/
https://chrome.google.com/webstore/detail/user-agent-switcher-for-c/djflhoibgkdhkhhcedjiklpkjnoahfmg


Jeg har valgt at ligge mobil ting ind under samme med database så den ikke nå at hente hele min siden/kode, ved ikke om det er en god ide eller har du en andne ide til det?..

Fold kodeboks ind/udPHP kode 


Notice: Undefined variable: ua in /home/jesperbo/public_html/blabla.dk/inc/function_php/function.php on line 39 Warning: Cannot modify header information - headers already sent by (output started at /home/jesperbo/public_html/blabla.dk/inc/function_php/function.php:39) in /home/jesperbo/public_html/blabla.dk/inc/function_php/function.php on line 43


line 39 er her:

Fold kodeboks ind/udPHP kode 


line 43 er her:

Fold kodeboks ind/udPHP kode 



jeg har prøve at tag det her ind i min side men så gå den hen og intet vil vise på siden SE HER

Hvis jeg har gjort sådan her:

Fold kodeboks ind/udPHP kode 

så kommer den frem vise sådan her:

SE BILLEDET HER


Så hvis jeg bruger $ua er bedre endnu den sidste jeg viser her:




JEG komme fordi den her side

det her hjælpe mig og nu køre den via mobil og browser :

Link

jeg fandet også den her til at siden:

mobil side



Indlæg senest redigeret d. 27.12.2012 13:55 af Bruger #17136
det var derfor jeg bad om noget merer code, så jeg kunne se hvordan du bruger den.

dette vil give en loop fejl, og jeg tror du har lavet det sådan, baseret på din loop fejl
index.php
Fold kodeboks ind/udKode 


løsning fjern
Fold kodeboks ind/udKode 


ref
function db_c()
{
$link = @mysqli_connect('localhost', '..', '..', '..');
if(!$link)
..
er du sikker på du kan have en function inde i en function ??
jeg kan se det ligge i en class, har du en variabel der hedder $au ??
dette
if(detect_mobile($ua) ) {
burde være
if(detect_mobile($this->ua) ) {


Ja er flytte den til en function for sig selv. og jeg kan godt se hvad du mener ! :) jeg giver dig lige et +1 for den her du lige har skrevet :) tak tak


det virker dog ikke hvis jeg gøre sådan her

if(detect_mobile($ua) ) {
burde være
if(detect_mobile($this->ua) ) {



Indlæg senest redigeret d. 27.12.2012 19:07 af Bruger #17136
<< < 12 > >>
t