(更新)php在注册的同时创建两个东西?

时间:2014-06-24 05:05:21

标签: php login

我打算创建一个注册页面来完成作业,但我找不到它的简单答案。这就是问题所在。 我想在表调用customerlist中插入新的loginid和密码,并创建一个名为new loginid的新表。

以下是代码:

$loginid = $_POST['loginid'];
$pw = $_POST['pw'];
$pw2 = $_POST['pw2'];

if($loginid != null && $pw != null && $pw2 != null && $pw == $pw2)
{ $sql = "insert into customerlist(LoginID,Password) values ('$loginid','$pw')";
  $sql="create table {$loginid} 
                (
  TradeID(50) VARCHAR(20),
  Trademode VARCHAR(10),
  Tradedate data,
  MTRdate   VARCHAR(50) ,
  Postaddress VARCHAR(255),
  Tel VARCHAR(15),
  Receivables int,
  Status VARCHAR(10)
                 );";



        if(mysql_query($sql))
        {
                echo 'success!';
                echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
        }
        else
        {
                echo 'fail!';
                echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
        }
}
else
{
        echo 'get out!';
        echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
}
?>

更新

<?php

$con = mysql_connect("localhost","root","password");
mysql_select_db("babytradeapps");

$loginid = $_POST['loginid'];
$pw = $_POST['pw'];
$pw2 = $_POST['pw2'];
$name = $_POST['name'];
$telephone = $_POST['telephone'];
$idcard = $_POST['idcard'];
$email = $_POST['email'];
$bankac = $_POST['bankac'];
$plan = $_POST['plan'];
$date = $_POST['date'];

if($loginid != null && $pw != null && $pw2 != null && $pw == $pw2)
{ $sql = "insert into customerlist(LoginID,Password,Name,Phone,IDCARDNO,Email,BankACNO,Plan,Date) values ('$loginid','$pw','$name','$telephone','$idcard','$email','bankac','plan','date')";
  $sql2 = "insert into overall(LoginID,TradeID,Trademode,Tradedate,MTRdate,Postaddress,Tel,Receivables,Status) values ('$loginid','example','example','example','example','example','example','example','example')";
        if(mysql_query($sql)&& mysql_query($sql2))
        {
                echo 'success!';
                echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
        }
        else
        {
                echo 'fail!';
                echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
        }
}
else
{
        echo 'get out!';
        echo '<meta http-equiv=REFRESH CONTENT=2;url=index.php>';
}
?>

我已经改变,但为什么结果失败? 什么错了?

1 个答案:

答案 0 :(得分:2)

您正在使用$sql语句在insert语句的下一行中使用create table语句覆盖 $sql = "insert into customerlist(LoginID,Password) values ('$loginid','$pw')"; $sql2="create table {$loginid} ( TradeID(50) VARCHAR(20), Trademode VARCHAR(10), Tradedate data, MTRdate VARCHAR(50) , Postaddress VARCHAR(255), Tel VARCHAR(15), Receivables int, Status VARCHAR(10) );"; if(mysql_query($sql) && mysql_query($sql2)) 变量,因此只会执行第二个命令。为此使用不同的变量并进行两次查询。

mysql_*

还注意到zerkms的警告,创建这么多表并不是一个好的数据库布局。

另一个注意事项:您正在使用已被弃用的mysqli_*函数,并将从未来的PHP版本中删除。请改用{{1}}或PDO。