Có thể lấy địa chỉ IP của khách hàng thông qua Flash (swf) Action Script 3 và sau đó chuyển nó vào tệp php để lưu trữ nó trong cơ sở dữ liệu không?Nhận địa chỉ IP bằng cách sử dụng Action Script?
Trả lời
Không cần phải làm điều đó trong flash, chỉ làm điều đó trên máy chủ của bạn trong php "$ ip = @ $ REMOTE_ADDR;"
Như tôi biết CÓ !! Nhưng tôi tự hỏi về lý do làm điều đó. Bạn chỉ có thể sử dụng PHP để lấy địa chỉ IP ..
EDIT: Đã có nghiên cứu .. Thay đổi câu trả lời của tôi. Tôi nghĩ rằng có ít khả năng hơn để làm điều đó với Flash ..
Không, địa chỉ IP của khách hàng không có sẵn trong ActionScript 3. Cách tiếp cận được khuyến nghị là để nó phản ánh bằng mã phía máy chủ.
Xem http://www.actionscript.org/forums/showthread.php3?s=&threadid=20123
Giống như câu trả lời ở trên, sử dụng PHP (hoặc ngôn ngữ kịch bản khác) để chuyển địa chỉ IP dưới dạng giá trị tham số vào phim flash của bạn và bạn sẽ có sẵn trong thời gian chạy.
Một tùy chọn khác là sử dụng ExternalInterface để thực hiện cuộc gọi đến một kịch bản PHP phía máy chủ hoặc một cái gì đó tương tự để trả lại địa chỉ IP.
Như Alex nói, vượt qua nó trong qua FlashVars, nhưng điều đó PHP thực sự cần là:
$_SERVER['REMOTE_ADDR']
Việc gia hạn json rất thuận tiện cho việc viết ra vars flash, ví dụ cho đi qua để SWFObject:
var flashvars = { IP : <?=json_encode($_SERVER['REMOTE_ADDR'])?> };
function GetUserIP() {
var js="function get_userIP(){return java.net.InetAddress.getLocalHost().getHostAddress();}";
var userIPInfo:String=ExternalInterface.call(js).toString();
return userIPInfo;
}
Điều này có hoạt động không? Nó đang sử dụng các phương thức java trong JavaScript? – ErikPerik
Có thể lấy địa chỉ IP thực thông qua flash Actionscript.
Bạn sẽ tin điều đó sau khi bạn truy cập trang web này (click vào tab Flash):
Bạn đang sử dụng tập lệnh PHP để lấy địa chỉ IP, nó không khác so với các câu trả lời trước đó. – JabbyPanda
Mặc dù hầu hết những gì đang nói đến - có sự khác biệt nào đó. Tôi đã từng chạy một diễn đàn khá lớn (200k +) và hầu hết các thành viên bị cấm cuối cùng đã bị bắt lại khi họ vào cuộc trò chuyện của chúng tôi (Flash). Trong khi phần mềm VB (sử dụng php) sẽ cung cấp cho một IP (Thông thường thông qua Proxy/Network), Chat (Flash) trên thực tế sẽ cung cấp cho chúng tôi True IP của chúng. Đừng yêu cầu tôi giải thích - Tôi hầu như không nhận được bằng PHP bản thân mình ...
Nếu bạn không thể giải thích, đừng viết nó. Các tệp Flash chạy ở phía máy khách và không thể đọc được mạng máy khách-ip. –
Thực ra anh ấy đúng. Tôi đã phải vật lộn cả ngày để vượt qua xác minh Flash IP. Tôi quản lý để vượt qua một vài lớp bảo mật bằng cách sử dụng một Proxy (không đủ) và sau đó là một VPN. VPN cung cấp cho tôi quyền truy cập đầy đủ vào trang web nhưng không cung cấp cho trình phát Flash. Tôi đã thực hiện một số nghiên cứu và Flash có thể truy cập IP thực của bạn bất kể nỗ lực của bạn trừ khi bạn buộc một máy ảo có VPN, không có bất kỳ liên kết nào cả với hệ thống chính của bạn. Kiểm tra nó trên internet: đi qua xác minh ip flash, nó không phải là một chủ đề được thảo luận rộng rãi nhưng nó rất intresting. – SporeDev
$ _SERVER ['REMOTE_ADDR'] sẽ là cách ưu tiên để làm điều đó. – ErikPerik