$result=$db->query($sql);
这是代码,
当$sql是正确的时候,语句正常执行,
当$sql是错误的时候,它会提示sql错误,
请问,如何令$sql错误的时候,不提示错误,或者提示指定的提示信息,谢谢。

解决方案 »

  1.   

    $sql如果错了不提示错误你怎么知道错在哪 特别的复杂的sql语句 
    不建议这么做
      

  2.   

    $result=@$db->query($sql) or die('错误提示信息');
      

  3.   


    ++
    屏蔽notice,可能会引起严重的后果。
    假如屏蔽掉这个提示信息,那数据库操作不成功的话,如该入库的没入库等(在没有别的消息提示的时候).后果很严重.
      

  4.   

    try {    $result=$db->query($sql);} catch(Exception $e) {   // 错误可以显示错误
       show($e->getMessage());   // 不想显示可以记录log
       log($e->getMessage());   // 什么都不干 干脆留空
    }
      

  5.   

    pdo 
    show log用@屏蔽更直接吧
      

  6.   

    @
    $link = mysql_connect(...) or sysMsg("error");
      

  7.   

    $dbr = mysql_connect(...) or die("error");
      

  8.   

    SQL错误有时候很难发现的,所以不建议完全屏蔽,可以出错时throw new exception
      

  9.   

    DAO层是需要向上层throw异常的,不要屏蔽。
    只不过需要UI显示上用一种友好的方式来说明错误
    出错可以用throw一个异常向上抛,抛到UI层,try catch一下处理就OK了
      

  10.   

    query 函数块改一下不就ok了,错误记日志,又安全