我只是从php和mysql开始,我一直在做VB,这是非常简单的,现在我挣扎于每一点php。我制作了一小部分代码,这些代码与mysql服务器作为根连接,并创建了一个数据库,其中输入了文本字段中的名称,但是每当我加载页面时,我都会在有机会键入db名称和按下按钮之前看到一条错误消息。代码执行此任务,但提供了一条令人困惑的错误消息。
注意:在第53行的C:\xampp\htdocs\dbcreation.php中,未定义的索引: dbname在创建数据库时出错:您的SQL语法中有一个错误;检查与您的MySQL服务器版本对应的手册,以获得正确的语法使用
<?php
$databasename = $_POST['dbname'];
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE $databasename",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_close($con);
?>在我按下按钮之前,我需要更改什么才能执行代码?
发布于 2013-01-24 16:26:01
检查变量是否存在。
if(!empty($_POST['dbname'])){
// execute code
}发布于 2013-01-24 16:27:17
即使表单尚未提交,您的查询仍在运行。您首先需要检查表单是否已提交。例如:
if(!empty($_POST['dbname']))
{
// Handle stuff here.
}不过,我想为大家提几点意见:
mysql_*函数,它们现在被废弃了,您应该至少使用mysqli。发布于 2013-01-24 16:27:47
可以通过ussing ()函数检查变量是否已经设置
<?php
if(isset($_POST['dbname']))
{
$databasename = $_POST['dbname'];
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
if (mysql_query("CREATE DATABASE $databasename",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_close($con);
}
?>https://stackoverflow.com/questions/14506016
复制相似问题