我正在尝试使用CREATE DATABASE命令创建一个数据库,但它给了我一个错误.这是我的代码:
$db_usr = mysql_real_escape_string($_POST["email"]);
$con=mysql_connect("localhost","root");
if (! $con)
{
die('Could not connect: ' . mysql_error());
}
else
{
test();
}
function test()
{
$sql = "CREATE DATABASE '$db_usr'";
mysql_query($sql);
}
Run Code Online (Sandbox Code Playgroud)
它总是返回"未定义的变量"
$db_user在您的函数范围内无法访问该变量,这就是您收到该错误的原因.
如果要在函数内部使用变量,则将其作为函数参数传递,如下所示:
function test($db_usr)
{
$sql = "CREATE DATABASE `$db_usr`";
mysql_query($sql);
}
Run Code Online (Sandbox Code Playgroud)
如果这涉及用户输入,那么您的数据库查询很容易受到SQL注入的攻击.您应该始终验证用户输入(建议的方法是使用带有参数化查询的MySQLi或PDO).
| 归档时间: |
|
| 查看次数: |
100 次 |
| 最近记录: |