الكثير منا يعرف أن كيفية طباعة رقم الآي بي تكون من خلال الشيفرة التالية:
لكن هذا للأسف قد لا يعرض الآي بي الحقيقي للمستخدم إن لم يكن اتصاله مباشرا بالإنترنت، كأن يكون متصلا من خلال مزود رئيس أو فرعي أو عن طريق بروكسي، فهنا يظهر رقم ذلك المزود وليس رقم المستخدم.كود PHP:
<? echo "<b><font color=red> $REMOTE_ADDR </font></b>"; ?>
والشيفرة التالية تحل هذا الإشكال ، وهي لدي منذ بضعة سنوات ، وقد أضفت إليها بضعة إضافات مثل HTTP_CLIENT_IP$ وبعض التنسيقات البسيطة:
مثال عليها: http://almubarmij.info/ip.php
الشيفرة المصدرية كاملة:
كود PHP:
<html>
<br>
<br>
<br>
<table align=center width=66% bgcolor=#DDDDDD cellpadding=15><tr><td>
<?php
/******************************************************************************\
* Sample IP function Version 1.0 *
* Copyright 2000 Frederic TYNDIUK (FTLS) All Rights Reserved. *
* E-Mail: tyndiuk@ftls.org Script License: GPL *
* Created 02/28/2000 Last Modified 02/28/2000 *
* Scripts Archive at: http://www.ftls.org/php/ *
* Modified by ((Abu Hazim)) - http://almubarmij.info/
*******************************************************************************/
?>
<b>IP:</b>
<?php
//$ip = $REMOTE_ADDR;
// IP Adress
if (getenv(HTTP_X_FORWARDED_FOR)){
$ip=getenv(HTTP_X_FORWARDED_FOR);
}
elseif (getenv($HTTP_CLIENT_IP)){
$ip=getenv($HTTP_CLIENT_IP);
}
else {
$ip=getenv(REMOTE_ADDR);
}
echo "<b><font color=red> $ip </font></b>";
?>
<br><br>
<B>RemoteHost:</B>
<?php
$host = gethostbyaddr($REMOTE_ADDR);
// Remote host name
echo "<b><font color=008800>$host</font></b>";
?>
<br><br>
<b>With:</b>
<?php
$navigator = "<b><font color=AA0000> $HTTP_USER_AGENT </font></b>";
// Navigator informations
echo $navigator;
?>
</table>
</html>