2

I searched the internet for answer but when I couldn't find one, I am posting my question. Is there any way we can detect if a site is being used by computer or mobile? I don't want to use the TeraWurfl. Just and piece of code that could return computer or mobile? Has any one worked on a code like this?

8
  • What is the definition of "mobile"? What is a tablet on 4G? Is that mobile? What is a convertible laptop being used in tablet mode? What is a phablet phone on home WiFi? Commented Jan 19, 2016 at 5:25
  • Any sort of tablet, phablet will be treated as a mobile. Laptop and computer will be treated as a computer. Commented Jan 19, 2016 at 5:28
  • But, there is no real difference between a tablet and many laptops these days. Heck, the latest Microsoft laptop can be either a full fledged laptop or a full-fledged tablet. You're making an arbitrary distinction here which really makes no sense any more. Instead, you have to look for some characteristic of the client (screen size, touch capable, etc...) and stop using the terms mobile vs. laptop. Commented Jan 19, 2016 at 5:32
  • So, maybe if you describe the problem you're really trying to solve, we can better help with what type of client detection might solve that problem. Commented Jan 19, 2016 at 5:33
  • My client just wanted that if they are using computer or laptop. He is not that much technical. I have used mobile_Detect.php and it worked for me. Commented Jan 19, 2016 at 5:36

3 Answers 3

1

I used mobile_Detect.php and it solved my issue. I used the following code.

<?php require_once '../Mobile_Detect.php'; $detect = new Mobile_Detect; echo $deviceType = ($detect->isMobile() ? ($detect->isTablet() ? 'tablet' : 'phone') : 'computer'); ?> 
Sign up to request clarification or add additional context in comments.

3 Comments

Where can someone find Mobile_Detect.php?
@skyler: Check my answer for brief detail Mobile Detect RESS script
1

You could do a check against the window user agent then match that against an array of user agent strings.

var ua = window.navigator.userAgent 

You can find a list of current user agents at this site.

List of User Agent Strings

Comments

1

In PHP, the solution is here:

<?php $useragent = $_SERVER['HTTP_USER_AGENT']; if(preg_match('/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i',substr($useragent,0,4))) { // it is mobile } else { // it is a computer } ?> 

Quoted from a previous answer posted here.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.