首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将连接页面更改为PDO并获取mysql_error()

问将连接页面更改为PDO并获取mysql_error()
EN

Stack Overflow用户
提问于 2012-11-04 10:24:38
回答 1查看 411关注 0票数 4

正在检查我的代码,以便将所有查询转换为准备好的查询(PDO)。我相应地更改了我的连接页面。当我清理我的函数页面时,我遇到了错误mysql_error() expects parameter 1 to be resource, integer given,它引用了我的电子邮件函数

代码语言:javascript
复制
email_exists($email){
    $query1 = mysql_query("SELECT COUNT(user_id) FROM tempusers WHERE 
    `email` = '$email'") OR die(mysql_error(0));
    $email = sanitize($email);

    return (mysql_result($query1,0)==1)? true : false;
}

因为它是一个函数页,这意味着我不能在我的连接页中调用变量,再加上我仍然停留在旧的查询方式上,所以我很难修复这个查询。我非常感谢任何关于这个查询过程的想法,以及任何一般的技巧。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-04 11:01:41

您应该像处理其他地方的错误一样处理函数中的错误。

但是,由于这是在函数内部,您需要使连接在函数的作用域中可用。

有几种方法可以做到这一点,一些例子(从不太好到更好...):

  1. 在您的函数中声明您的PDO连接变量全局。我不建议将其作为最终的解决方案,但在您改进的过程中,它将发挥作用;
  2. 将PDO连接作为附加参数添加到函数中。虽然比1.更好,但您需要将所有函数调用更改为包含新的parameter(s);
  3. refactor到OOP,并使用依赖注入将您的PDO连接添加到电子邮件类/对象。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13215466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档