Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在注册时向数据库添加客户端IP地址。_Php_Mysql_Database - Fatal编程技术网

Php 如何在注册时向数据库添加客户端IP地址。

Php 如何在注册时向数据库添加客户端IP地址。,php,mysql,database,Php,Mysql,Database,正如标题所说,在他们注册时,我如何将他们的IP地址添加到我的SQL数据库中。我正在托管一个游戏服务器来跟踪哪个ID在哪个IP上 <?php if($_POST['B1']) { mysql_select_db($mydbacc); $userid = trim($_POST['id']); $password=trim($_P

正如标题所说,在他们注册时,我如何将他们的IP地址添加到我的SQL数据库中。我正在托管一个游戏服务器来跟踪哪个ID在哪个IP上

        <?php
           if($_POST['B1'])
                {
                mysql_select_db($mydbacc);
                $userid = trim($_POST['id']);
                $password=trim($_POST['pass']);
                $passretype=trim($_POST['retpass']);
                $hash=$_POST['hash'];

            if($password != $passretype) {
                        echo "Password not equal to Retyped Password.";
                    }else{
                        if(!ereg("^[0-9a-zA-Z]{4,12}$",$password))
                        {
                            echo "Only letters or numbers, length of 4 to 12 characters";
                        }
                        else
                        {
                            $res = mysql_query("select * from account where name = '".$userid."' order by id desc");
                            if(mysql_num_rows($res) == 0)
                            {
                                mysql_query("insert into account (name,Password,Reg_date) values ('".$userid."','".$hash."','".date("y-m-d H:i:s", time())."')");
                                echo "Account registered successfully.";
                            }
                            else
                            {
                                echo "Account Already exists in database.";
                            }
                        }
                    }


                    }

           ?>
试试看
$ip=$\u服务器['REMOTE\u ADDR']


这将为您提供IP

您需要在Account表中创建一列来保存IP地址,然后通过如下更改查询将其插入:

       <?php
       if($_POST['B1'])
            {
            mysql_select_db($mydbacc);
            $userid = trim($_POST['id']);
            $password=trim($_POST['pass']);
            $passretype=trim($_POST['retpass']);
            $hash=$_POST['hash'];
            $IP = $_SERVER['REMOTE_ADDR'];

        if($password != $passretype) {
                    echo "Password not equal to Retyped Password.";
                }else{
                    if(!ereg("^[0-9a-zA-Z]{4,12}$",$password))
                    {
                        echo "Only letters or numbers, length of 4 to 12 characters";
                    }
                    else
                    {
                        $res = mysql_query("select * from account where name = '".$userid."' order by id desc");
                        if(mysql_num_rows($res) == 0)
                        {
                            mysql_query("insert into account (name,Password,Reg_date, IP) values ('".$userid."','".$hash."','".date("y-m-d H:i:s", time())."), '".$IP."'");
                            echo "Account registered successfully.";
                        }
                        else
                        {
                            echo "Account Already exists in database.";
                        }
                    }
                }


                }

       ?>

您似乎已经成功地将数据添加到数据库中。如果你问的是如何获取IP地址,这里已经给出了答案:如果你要求某人为你编写所有代码,那么你就错了。