为什么我必须为我的函数抑制错误才能工作

时间:2014-05-18 08:41:47

标签: php runtime-error error-suppression

您好我有一个脚本可以将人员记录到我的网站中,脚本中是这个方法(我已更改了值)

$con=mysql_connect("mydbdomain", "mydbusername", "mypassword");

现在我下载了一个开源文件上传程序并将其上传到我的服务器,只允许数据库中的用户使用它。这一切都很棒。然而,我去编辑处理文件上传的php代码,这样每次用户上传文件时都会进入与其用户名匹配的目录。

<?php
/*
* jQuery File Upload Plugin PHP Class 7.1.4
* https://github.com/blueimp/jQuery-File-Upload
*
* Copyright 2010, Sebastian Tschan
* https://blueimp.net
*
* Licensed under the MIT license:
* http://www.opensource.org/licenses/MIT
*
* Modified by leathan AxE
*/

class UploadHandler
{
...
...
...
...
    function foo() { ... }
}
?>

上面名为foo的函数是我连接到db并提取future目录的值的地方。但每当我有这条线。

$con=mysql_connect("mydbdomain", "mydbusername", "mypassword");

而不是

$con=@mysql_connect("mydbdomain", "mydbusername", "mypassword");
没什么作用。为什么当我使用@并压制错误时它一切正常?为什么会有错误?只有在使用@时,文件才会完美地上传到用户名目录。我只是想了解发生了什么。我不明白如何出现错误,因为我使用了行

$con=mysql_connect("mydbdomain", "mydbusername", "mypassword");

在其他文件中,它始终有效。

1 个答案:

答案 0 :(得分:3)

mysql_connect已弃用,不应使用。可能您的提供商有E_DEPRECATED错误级别,并且您在使用mysql_connect时会收到警告。

尝试使用PDO