PHP 报错 Warning: mysql_query() expects parameter 1 to be string, resource given in
全文:<?phpheader("Content-type:text/html;Charset=utf-8");include'config.php';$conn=mysq...
全文:<?php header("Content-type:text/html;Charset=utf-8");include 'config.php';$conn = mysql_connect($sqlconfig['host'],$sqlconfig['user'],$sqlconfig['pass'],$sqlconfig['dbname']);$sql = "CREATE TABLE userinfo (id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, idname VARCHAR(30) NOT NULL,username VARCHAR(30) NOT NULL,pass VARCHAR(30) NOT NULL,)";if (mysql_query($conn,$sql)) { echo "成功";}else{ echo "失败";} ?>
展开
5个回答
2019-07-02
展开全部
你搞混了mysql函数和mysqli函数的用法
mysql_query( $sql, $conn); 第一个是sql语句,第二个是mysql连接源,其中,第二个参数可以省略,默认是上一个连接
mysqli_query( $conn, $sql ); 两个参数刚好和上面相反,而且第一个参数不可以省略!
mysql函数只可以过程方式操作数据库, 而msyqli可以过程方式和对象方式,比如
$conn = new mysqli('localhost', 'root', 123456, 'dbname');
$conn -> query( $sql );
建议使用msyqli函数,mysql函数在php的高版本中已经抛弃了,比如php7
mysql_query( $sql, $conn); 第一个是sql语句,第二个是mysql连接源,其中,第二个参数可以省略,默认是上一个连接
mysqli_query( $conn, $sql ); 两个参数刚好和上面相反,而且第一个参数不可以省略!
mysql函数只可以过程方式操作数据库, 而msyqli可以过程方式和对象方式,比如
$conn = new mysqli('localhost', 'root', 123456, 'dbname');
$conn -> query( $sql );
建议使用msyqli函数,mysql函数在php的高版本中已经抛弃了,比如php7
展开全部
不要直接通过mysql_query()返回值来判断
mysql_query()如果里面放的是查询之类的语句,那返回的是资源,说白了就是你要查的数据结果集;如果里面放的是增删改之类的语句,那返回的是true或者false了。
如果你要使用这个数据结果集,必须用mysql_fetch_array(), mysql_fetch_row()等函数获取里面的数据,就是mysql_query()得和上面几个函数配合使用。
mysql_query()如果里面放的是查询之类的语句,那返回的是资源,说白了就是你要查的数据结果集;如果里面放的是增删改之类的语句,那返回的是true或者false了。
如果你要使用这个数据结果集,必须用mysql_fetch_array(), mysql_fetch_row()等函数获取里面的数据,就是mysql_query()得和上面几个函数配合使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mysql_query($conn,$sql)
改为
mysql_query($sql, $conn)
改为
mysql_query($sql, $conn)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mysql_query方法用错了,第一个变量是sql,第二个才是conn
追问
mysql和mysqli有什么区别=-=
追答
mysqli应该是php5后出现的,是mysql的增强版,方法都差不多,性能mysqli好一点。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询