Maison >développement back-end >tutoriel php >PHP obtient les informations du client
Adresse de test :
http://www.huaxialijian.com/get.php
http://www.huaxialijian.com/ipresult.php
http://www.huaxialijian.com/browse.php
Remarque : la construction locale nécessite des données Mysql, et deux dossiers
Les deux dossiers sont placés au même endroit que le code
Nom du fichier et du dossier sous le répertoire de niveau : ./image/chuyin.png (Hatsune Miku)
:./css/tpzdsf.css (mise à l'échelle automatique de l'image)
Fichier tpzdsf Code .css :
body { text-align:left;background:#f8f8f8;} .scale img{ background-size:contain|cover; width:100%; height: auto; }
Obtenir le contenu
1. Adresse IP
2. Adresse physique
3. 🎜>Outils de développement : centos 6.5, VIM, mysql, navigateur, téléphone mobile
Code : get.php Obtenez des informations pertinentes, insérez-les dans la base de données
Fichier 2, ipresult. Afficher les informations obtenues, sélectionner l'affichage de la table de base de données<html> <title> |初音未来の| </title> <?php include_once ("db_mysql.php"); include_once ("browse.php"); header("content-type:text/html;charset=utf-8"); $ipa = getip(); $ipaddr = realmac($ipa); // echo $ipa."->".$ipaddr."\n"; function getip(){ $onlineip=''; if(getenv('HTTP_CLIENT_IP')&&strcasecmp(getenv('HTTP_CLIENT_IP'),'unknown')){ $onlineip=getenv('HTTP_CLIENT_IP'); } elseif(getenv('HTTP_X_FORWARDED_FOR')&&strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),'unknown')){ $onlineip=getenv('HTTP_X_FORWARDED_FOR'); } elseif(getenv('REMOTE_ADDR')&&strcasecmp(getenv('REMOTE_ADDR'),'unknown')){ $onlineip=getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'],'unknown')){ $onlineip=$_SERVER['REMOTE_ADDR']; } return $onlineip; } function realmac($ipaddr) { $ip = @file_get_contents("http://ip.taobao.com/service/getIpInfo.php?ip=".$ipaddr); $ip = json_decode($ip,true); $data = $ip['data']; return $data['country'].$data['region'].$data['city'].$data['isp'].$data['country_id']; } $bro = determinebrowser($Agent); $sys = determineplatform($Agent); $getnet = getnettype($Agent); //var_dump($bro); //var_dump($sys); //exit; $sql = "INSERT INTO ips (uid,ip,addr,browse,sysversion,nettype) VALUES ('1','$ipa','$ipaddr','$bro','$sys','$getnet');"; mysql_select_db("my_db"); mysql_query('SET NAMES UTF8'); if(!mysql_query($sql,$con)) { echo mysql_error(); }else { //隐藏提示吧 // echo "系统提示:".$ipa."->".$ipaddr." 已经记录!"; } ?> <head> <link rel="stylesheet" type="text/css" href="./css/tpzdsf.css"> <body> <p class="scale"> <img src="./image/chuyin.png"> </p> </body> </head> </html>Fichier 3 Obtenir les informations de l'agent Ce fichier contient de nombreuses sources de code qui constituent des violations du réseau. Veuillez supprimer
<html> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>查询IP结果</title> <head> <style type="text/css"> </style> </head> <table> <tr> <td><b>[id]</b></td> <td><b>[ip地址] </td> <td><b>[实际地址]</b></td> <td><b>[浏览器]</b></td> <td><b>[操作系统]</b></td> <td><b>[网络类型]</b></td> </tr> <?php header("content-type:text/html;charset=utf-8"); include_once ("db_mysql.php"); mysql_select_db("my_db",$con); mysql_query('SET NAMES UTF8'); $sql = "select * from ips order by id desc;"; $query = mysql_query($sql,$con); while($row = mysql_fetch_array($query)){ ?> <tr> <td><?php echo $row['id']; ?></td> <td><?php echo $row['ip']; ?></td> <td><?php echo $row['addr']; ?></td> <td><?php echo $row['browse']; ?></td> <td><?php echo $row['sysversion']; ?></td> <td><?php echo $row['nettype']; ?></td> </tr> <?php } ?> </table> </html>Créer une structure de table
<?php header("content-type:text/html;charset=utf-8"); $Agent = $_SERVER['HTTP_USER_AGENT']; //echo $Agent."<br>"; //显示访问用户的浏览器信息 //echo '浏览器: ' . determinebrowser($Agent) . "<br>"; //显示访问用户的操作系统平台 //echo '系统版本: ' . determineplatform($Agent). "<br>"; //显示移动设备联网方式 //echo '网络:'.getnettype($Agent)."<br>"; //正值表达式比对解析$_SERVER['HTTP_USER_AGENT']中的字符串 获取访问用户的浏览器的信息 function determinebrowser ($Agent) { $browseragent=""; //浏览器 $browserversion=""; //浏览器的版本 if (ereg('MSIE ([0-9].[0-9]{1,2})',$Agent,$version)) { $browserversion=$version[1]; $browseragent="Internet Explorer"; } else if (ereg( 'Opera/([0-9]{1,2}.[0-9]{1,2})',$Agent,$version)) { $browserversion=$version[1]; $browseragent="Opera"; } else if (ereg( 'Firefox/([0-9.]{1,5})',$Agent,$version)) { $browserversion=$version[1]; $browseragent="Firefox"; }else if (ereg( 'Chrome/([0-9.]{1,2})',$Agent,$version)) { $browserversion=$version[1]; $browseragent="Chrome"; } else if (ereg( 'QQ/([0-9.]{1,3})',$Agent,$version)) { $browserversion=$version[1]; $browseragent="QQ"; } else if (ereg( 'Safari/([0-9.]{1,3})',$Agent,$version)) { $browseragent="Safari"; $browserversion=""; } else { $browserversion=""; $browseragent="other"; } return $browseragent.$browserversion; } // 同理获取访问用户的浏览器的信息 function determineplatform ($Agent) { $browserplatform==''; if (eregi('win',$Agent) && strpos($Agent, '95')) { $browserplatform="Windows 95"; } elseif (eregi('win 9x',$Agent) && strpos($Agent, '4.90')) { $browserplatform="Windows ME"; } elseif (eregi('win',$Agent) && ereg('98',$Agent)) { $browserplatform="Windows 98"; } elseif (eregi('win',$Agent) && eregi('nt 5.0',$Agent)) { $browserplatform="Windows 2000"; } elseif (eregi('win',$Agent) && eregi('nt 5.1',$Agent)) { $browserplatform="Windows XP"; } elseif (eregi('win',$Agent) && eregi('nt 6.0',$Agent)) { $browserplatform="Windows Vista"; } elseif (eregi('win',$Agent) && eregi('nt 6.1',$Agent)) { $browserplatform="Windows 7"; } elseif (eregi('win',$Agent) && ereg('32',$Agent)) { $browserplatform="Windows 32"; } elseif (eregi('win',$Agent) && eregi('nt',$Agent)) { $browserplatform="Windows NT"; }elseif (eregi('Mobile',$Agent) && eregi("iphone",$Agent)) { $browserplatform="iphone"; }elseif (eregi('Mobile',$Agent) && eregi("Android",$Agent)) { $browserplatform="Android"; }elseif (eregi('Mac OS',$Agent)) { $browserplatform="Mac OS"; } elseif (eregi('linux',$Agent)) { $browserplatform="Linux"; } elseif (eregi('unix',$Agent)) { $browserplatform="Unix"; } elseif (eregi('sun',$Agent) && eregi('os',$Agent)) { $browserplatform="SunOS"; } elseif (eregi('ibm',$Agent) && eregi('os',$Agent)) { $browserplatform="IBM OS/2"; } elseif (eregi('Mac',$Agent) && eregi('PC',$Agent)) { $browserplatform="Macintosh"; } elseif (eregi('PowerPC',$Agent)) { $browserplatform="PowerPC"; } elseif (eregi('AIX',$Agent)) { $browserplatform="AIX"; } elseif (eregi('HPUX',$Agent)) { $browserplatform="HPUX"; } elseif (eregi('NetBSD',$Agent)) { $browserplatform="NetBSD"; } elseif (eregi('BSD',$Agent)) { $browserplatform="BSD"; } elseif (ereg('OSF1',$Agent)) { $browserplatform="OSF1"; } elseif (ereg('IRIX',$Agent)) { $browserplatform="IRIX"; } elseif (eregi('FreeBSD',$Agent)) { $browserplatform="FreeBSD"; } if ($browserplatform=='') {$browserplatform = "other"; } return $browserplatform; } function getnettype ($Agent) { $nettype = ""; if (ereg("NetType/WIFI",$Agent)) { $nettype ="WIFI"; } else if (ereg("NetType/4",$Agent)) { $nettype ="4G"; } else if (ereg("NetType/3",$Agent)) { $nettype ="3G"; } else if (eregi("NetType/2",$Agent)) { $nettype ="2G"; } else { $nettype = "WEB"; } return $nettype; } ?>. Cet article explique comment PHP obtient les informations client. Pour plus de contenu connexe, veuillez prêter attention au site Web chinois de PHP.
CREATE TABLE `ips` ( `id` int(6) NOT NULL AUTO_INCREMENT COMMENT '自动增长', `uid` int(6) DEFAULT NULL COMMENT '查询者ID', `ip` char(15) NOT NULL COMMENT 'IP地址', `addr` varchar(150) DEFAULT NULL COMMENT '实际地址', `browse` varchar(20) DEFAULT NULL COMMENT '浏览器类型', `sysversion` varchar(20) DEFAULT NULL COMMENT '操作系统版本', `nettype` char(10) DEFAULT NULL COMMENT '网络类型:WIFI,4G,3G,2G', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8;
Recommandations associées :
php modifier les informations de l'utilisateurphp supprimer l'utilisateurNotes d'étude MYSQLCe qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!