te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>Identify computer using JavaScript - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

Identify computer using JavaScript - Stack Overflow

programmeradmin2浏览0评论

I'm building a webapp, and I could use a solution that allows me to uniquely identify the users puter.

The reason for this is, that once the user is logged into to the application he/she can start several sessions (which is stored in mySQL) related to the app - however, the sessions should only be available from the puter in which the session was initiated.

I cannot use cookies, since the application should allow users to close the browser, restart the puter etc etc., without any risk of loosing the users session.

At first I thought I would be possible to get something like a motherboard serial. Naaah, not going to happen.

Then I thought of generating an MD5 hash based on users remote address + MAC address, until I found out that this is only possible using older versions of IE with ActiveX.

Then I came to think if all Chrome installations have some sort of unique browser ID I could use? ... Haven't been able to find anything helpful.

Any great ideas on how to generate an unique string based on the users puter?

I'm building a webapp, and I could use a solution that allows me to uniquely identify the users puter.

The reason for this is, that once the user is logged into to the application he/she can start several sessions (which is stored in mySQL) related to the app - however, the sessions should only be available from the puter in which the session was initiated.

I cannot use cookies, since the application should allow users to close the browser, restart the puter etc etc., without any risk of loosing the users session.

At first I thought I would be possible to get something like a motherboard serial. Naaah, not going to happen.

Then I thought of generating an MD5 hash based on users remote address + MAC address, until I found out that this is only possible using older versions of IE with ActiveX.

Then I came to think if all Chrome installations have some sort of unique browser ID I could use? ... Haven't been able to find anything helpful.

Any great ideas on how to generate an unique string based on the users puter?

Share Improve this question edited Nov 13, 2012 at 7:46 CyberDude 8,9795 gold badges32 silver badges51 bronze badges asked Nov 13, 2012 at 7:42 EibergDKEibergDK 5641 gold badge8 silver badges19 bronze badges 3
  • possible duplicate of How to uniquely identify a puter? – Quentin Commented Nov 13, 2012 at 7:45
  • @Quentin, Don't know why people won't use username + password to indent users...? – gdoron Commented Nov 13, 2012 at 8:08
  • Please read full post... "The reason for this is, that _____once the user is logged into to the application he/she can start several sessions____" – EibergDK Commented Nov 13, 2012 at 8:25
Add a ment  | 

2 Answers 2

Reset to default 9

You'll have to relax your constraints : even by using the browser digital print, you won't be able to have a guaranteed not changed and not lost UID.

My usual solution, which works very well but with no guarantee, is to send from the server to the browser an UID and to store it in localstorage. Note that a puter savvy user can remove it or change it. But if the user isn't your foe, this works well.

The reasons to prefer localstorage over cookies are :

  • no expiration
  • no tools to "clean" them, as they were origin-bound from the start and thus haven't the privacy-breach reputation of cookies
  • of course the cleaner and saner interface for javascript applications

I cannot use cookies, since the application should allow users to close the browser, restart the puter etc etc., without any risk of loosing the users session.

Cookies are not lost when the pute restart. You can use cookies.

发布评论

评论列表(0)

  1. 暂无评论