PDA

View Full Version : xin giúp đỡ về code PHP



toannet
06-01-2010, 12:46
Em đang làm một cái giỏ hàng bằng PHP và muốn lấy IP máy của khách hàng khi họ vào web mình mua hàng nhưng thử mấy cách mà vẫn không được, ai biết xin chỉ dùm em cái.

maychuvn
06-01-2010, 14:27
$_SERVER['REMOTE_ADDR']

Hàm đó nó lấy địa chỉ IP của máy khách, bạn thử nhé.

toannet
06-01-2010, 14:34
thank bạn, cách này mình cũng đã thử rồi, nhưng nếu có 2 khách hàng cùng sử dụng chung một mạng thì nó lại không phân biệt được. Có cách nào phân biệt được cả 2 máy đó không?

maychuvn
06-01-2010, 14:40
$_SERVER['HTTP_X_FORWARDED_FOR'],
$_SERVER["HTTP_FORWARDED"]

bạn thử 2 hàm đó nwax xem sao nhé

thuyduongcd
06-01-2010, 16:32
thank bạn, cách này mình cũng đã thử rồi, nhưng nếu có 2 khách hàng cùng sử dụng chung một mạng thì nó lại không phân biệt được. Có cách nào phân biệt được cả 2 máy đó không?

Làm sao lấy được vì 2 máy đó có chung IP mà. Thật sự thì bạn chỉ làm việc với cái router mà thôi.

toannet
06-01-2010, 16:44
Đúng vậy, có cách nào khác để phân biệt 2 máy đó không?

mobell200
06-01-2010, 17:21
nhầm mod xóa giùm sr

thuyduongcd
07-01-2010, 09:55
Thử dùng code này xem


function getRealIpAddr()
{
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip=$_SERVER['HTTP_CLIENT_IP'];
}elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip=$_SERVER['REMOTE_ADDR'];
}
return $ip;
}

toannet
07-01-2010, 16:18
cách này nó cũng không được, nếu 2 máy cùng một mạng thì vẫn lấy giống nhau.

maychu.net
09-01-2010, 15:59
Bạn phải dùng thêm cookie hay session nữa mới được.

toannet
09-01-2010, 22:40
thank mọi người đã giúp đỡ, vấn đề đã dc giải quyết ^^

iterator
10-01-2010, 15:00
Đã giải quyết như thế nào?

toannet
11-01-2010, 15:21
không lấy được ID nên chuyển sang lấy khách hàng bằng một field khác thôi.