Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么使用mysql_error()?_Php_Mysql - Fatal编程技术网

Php 为什么使用mysql_error()?

Php 为什么使用mysql_error()?,php,mysql,Php,Mysql,我是php的初学者,我正在制作一个表单,并使用php将值传递给数据库。此外,当我按下提交按钮时,我试图检查一个字段是否为空。我读过mysql_error(),但我不太明白它到底是做什么的。那么,有谁能解释一下下面几行的区别是什么 if(empty($_POST['fname'])) die ('Name is empty </body></html>'); if(空($\u POST['fname'])) die('名称为空'); 及 if(空($\u POST['f

我是php的初学者,我正在制作一个表单,并使用php将值传递给数据库。此外,当我按下提交按钮时,我试图检查一个字段是否为空。我读过mysql_error(),但我不太明白它到底是做什么的。那么,有谁能解释一下下面几行的区别是什么

if(empty($_POST['fname']))
die ('Name is empty </body></html>');
if(空($\u POST['fname']))
die('名称为空');

if(空($\u POST['fname']))
die('名称为空'.mysql_error()');
在这两种情况下,当我按下submit按钮时,我得到了相同的结果…只有消息:Name为空。那么,如果mysql_error()的用法是什么呢? 提前谢谢

mysql\u error()在发生mysql错误时向您提供错误消息。如果没有发生,则不会返回任何内容

更多信息请访问


另一方面,mysql扩展已经被弃用。您确实应该切换到使用或。

您没有对该代码执行MySQL数据库调用。所以它不会返回任何东西。此代码:

if(empty($_POST['fname']))
die ('Name is empty'. mysql_error().'</body></html>');

然后它会告诉您它无法连接,并显示具体的错误消息。

您说您是“php初学者”,那么为什么您忽略了这个错误呢?我原以为初学者会更加注意。我还建议你阅读本文以避免
或die
反模式-是的,我在mysql_connect中包含了它,但我不知道在检查名称字段时不包含它。或者只留下它:die('name is empty')@user3272713如果您只想显示名称为空就足够了。但是,如果这将显示给用户,我建议不要使用
或die
。它突然停止了脚本,并没有给用户带来太多帮助。相反,您可以只执行一个名为空的
echo
if(empty($_POST['fname']))
die ('Name is empty'. mysql_error().'</body></html>');
$mysql = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if(!mysql)
die ('Could not connect: '. mysql_error().'</body></html>');