PHP mysql\u查询字符串错误
我试图在PHP上使用数据库,但是当我试图创建一个数据表时,我遇到了一个错误。表的创建似乎是正确的(我想),但当我想打印表的创建确认时,它会抛出一个错误。代码如下:PHP mysql\u查询字符串错误,php,mysql,Php,Mysql,我试图在PHP上使用数据库,但是当我试图创建一个数据表时,我遇到了一个错误。表的创建似乎是正确的(我想),但当我想打印表的创建确认时,它会抛出一个错误。代码如下: if (mysql_query($connection,$sql)) //error { echo "1 record added"; } else { die('Error: ' . mysql_error($con)); //error } 它们都给了我一个错误mysq
if (mysql_query($connection,$sql)) //error
{
echo "1 record added";
}
else
{
die('Error: ' . mysql_error($con)); //error
}
它们都给了我一个错误mysql\u query()希望参数1是字符串
,mysql\u error()希望参数1是资源
在哪里
$sql
-由于mysql\u query
仅根据查询是否执行失败(即sql语法错误)返回一个布尔值,因此,将信息放入表中将不起作用
您将需要使用
请注意那页上可怕的红色方框
mysql\u查询
已被弃用。您需要切换到mysqli
错误说明函数mysql\u query()希望参数1为字符串。你确定变量$connection
和$sql
都是字符串吗?这倒过来说,参数应该是:($sql,$connection)
为什么它被称为$connection
第一个`和$con
第二个?你为什么不试着第一次切换参数顺序呢?错误消息不是很清楚吗?您正在调用mysql\u query()
类似于mysqli\u query()
,它将资源作为其第一个参数。人们还在使用mysql
函数吗?请跟上时代的步伐,使用mysqli
或pdo
+1来评论mysql
函数,我不敢相信他们还在尝试在新项目中使用mysql
。你怎么知道它的新功能呢?我接受了你的建议,切换到mysqli
,但现在它需要一个mysqli参数。mysqli参数到底是什么?您必须将所有函数切换到mysqli
,而不仅仅是一个
$server = 'localhost';
$username = 'root';
$password = 'YOUR PASSWORD';
$database = 'DB_name';
$con = mysql_connect($server, $username,$password);
$db = mysql_select_db($database);
if(!$con)
{
exit('Error: could not establish database connection');
}
if(!$db)
{
exit('Error: could not select the database');
}
$sql ="CREATE TABLE Persons(FirstName CHAR(30),LastName CHAR(30),Age INT)";
$result = mysql_query($sql);
if (!$result) //error
{
echo mysql_error(); //error
}
else
{
echo "1 record added";
}
$server = 'localhost';
$username = 'root';
$password = 'YOUR PASSWORD';
$database = 'DB_name';
$con = mysql_connect($server, $username,$password);
$db = mysql_select_db($database);
if(!$con)
{
exit('Error: could not establish database connection');
}
if(!$db)
{
exit('Error: could not select the database');
}
$sql ="CREATE TABLE Persons(FirstName CHAR(30),LastName CHAR(30),Age INT)";
$result = mysql_query($sql);
if (!$result) //error
{
echo mysql_error(); //error
}
else
{
echo "1 record added";
}