• Resolved luarb

    (@luarb)


    Hello , i am trying to code something to collect data
    from my visitors about their browser and OS.

    I found this function named HTTP_USER_AGENT and it worked till i tryed
    inside my wordpress site.

    Can anyone help me how to make this happen ?

    Thank you.

Viewing 4 replies - 1 through 4 (of 4 total)
  • WP doesn’t block things like HTTP_USER_AGENT. Are you grabbing the value using $_SERVER[‘HTTP_USER_AGENT’]?

    Thread Starter luarb

    (@luarb)

    I found a very useful function for detecting user os and browser ,
    it works very well , but when i put it inside wordpress
    it doenst work .

    `<?php
    $user_agent = $_SERVER[‘HTTP_USER_AGENT’];
    function getOS() {
    global $user_agent;
    $os_platform = “Unknown OS Platform”;
    $os_array = array(
    ‘/windows nt 10/i’ => ‘Windows 10’,
    ‘/windows nt 6.3/i’ => ‘Windows 8.1’,
    ‘/windows nt 6.2/i’ => ‘Windows 8’,
    ‘/windows nt 6.1/i’ => ‘Windows 7’,
    ‘/windows nt 6.0/i’ => ‘Windows Vista’,
    ‘/windows nt 5.2/i’ => ‘Windows Server 2003/XP x64’,
    ‘/windows nt 5.1/i’ => ‘Windows XP’,
    ‘/windows xp/i’ => ‘Windows XP’,
    ‘/windows nt 5.0/i’ => ‘Windows 2000’,
    ‘/windows me/i’ => ‘Windows ME’,
    ‘/win98/i’ => ‘Windows 98’,
    ‘/win95/i’ => ‘Windows 95’,
    ‘/win16/i’ => ‘Windows 3.11’,
    ‘/macintosh|mac os x/i’ => ‘Mac OS X’,
    ‘/mac_powerpc/i’ => ‘Mac OS 9’,
    ‘/linux/i’ => ‘Linux’,
    ‘/ubuntu/i’ => ‘Ubuntu’,
    ‘/iphone/i’ => ‘iPhone’,
    ‘/ipod/i’ => ‘iPod’,
    ‘/ipad/i’ => ‘iPad’,
    ‘/android/i’ => ‘Android’,
    ‘/blackberry/i’ => ‘BlackBerry’,
    ‘/webos/i’ => ‘Mobile’
    );foreach ($os_array as $regex => $value) {
    if (preg_match($regex, $user_agent)) {
    $os_platform = $value;
    }
    }
    return $os_platform;}
    function getBrowser() {
    global $user_agent;
    $browser = “Unknown Browser”;
    $browser_array = array(
    ‘/msie/i’ => ‘Internet Explorer’,
    ‘/firefox/i’ => ‘Firefox’,
    ‘/safari/i’ => ‘Safari’,
    ‘/chrome/i’ => ‘Chrome’,
    ‘/opera/i’ => ‘Opera’,
    ‘/netscape/i’ => ‘Netscape’,
    ‘/maxthon/i’ => ‘Maxthon’,
    ‘/konqueror/i’ => ‘Konqueror’,
    ‘/mobile/i’ => ‘Handheld Browser’
    );
    foreach ($browser_array as $regex => $value) {
    if (preg_match($regex, $user_agent)) {
    $browser = $value;
    }
    }
    return $browser;}
    $user_os = getOS();
    $user_browser= getBrowser();
    $device_details = “<strong>Browser: </strong>”.$user_browser.”
    <strong>Operating System: </strong>”.$user_os.””;
    print_r($device_details);
    ?>`

    Link where the code is inside wordpress.
    https://photolicious.website/5-photo-tutorial-to-make-your-smile-perfect/

    Link where the code is outside wordpress.
    https://photolicious.website/os/user-os.php

    Can someone help me please ? It is very important.

    Thank you!

    Moderator bcworkz

    (@bcworkz)

    You just need another global $user_agent; line outside of function declarations. Put it as 1st line in your code above, right after <?php

    Thread Starter luarb

    (@luarb)

    @bcworkz thank you so much my friend .
    It worked ?? !

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Allow HTTP_USER_AGENT to collect data from users.’ is closed to new replies.