首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查mysql_connect()是否失败?

问检查mysql_connect()是否失败?
EN

Stack Overflow用户
提问于 2011-08-13 20:23:34
回答 4查看 21.6K关注 0票数 3

嘿,我正在尝试找出我的sql查询是否失败。我想要它,所以如果它确实失败了,使用下面的代码重定向到表单页面:

代码语言:javascript
复制
$checkconnection = mysql_connect('localhost', $dbuser, $dbpass)
                                                or die();


if(!$checkconnection)
{
$_SESSION['errormsg'] = "<div style='padding-left: 50px;color:#FF0000'>Cannot connect to specfied database!</div>";
header("Location: install.php");
}else{
echo('Connection Successful!');
}

它所说的一切就是这样:

代码语言:javascript
复制
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'nzcraftn_admin'@'localhost' (using password: YES) in /home/nzcraftn/public_html/phishnet/install/install_submit.php on line 17
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-08-13 20:26:57

试试这个

代码语言:javascript
复制
$checkconnection = @mysql_connect('localhost', $dbuser, $dbpass)

它将隐藏默认错误并触发您自己的错误

票数 4
EN

Stack Overflow用户

发布于 2011-08-13 20:32:02

mysql_connect返回值为false仅表示失败。如果返回FALSE,则or die()表达式将退出php脚本。这就是为什么你不会输出任何数据的原因。

删除or die()命令,并显示if( !$checkconnection )子句中的实际错误。可以使用mysql_error()检索报告的错误。

票数 3
EN

Stack Overflow用户

发布于 2011-08-13 20:27:07

它只是显示警告,因为您的or die()没有输出任何内容(空参数列表)。试着这样做:

代码语言:javascript
复制
<?php
    //Start the session
    session_start(); 

    //Do the conntection
    $checkconnection = @mysql_connect('localhost', $dbuser, $dbpass);

    //Check if it's valid
    if(!$checkconnection) {

        //Add it up to the session, and redirect
        $_SESSION['errormsg'] = "<div style='padding-left: 50px;color:#FF0000'>Cannot connect to specfied database!</div>";
        session_write_close();
        header("Location: install.php");
        exit();

    } else{

        //Yay
        echo('Connection Successful!');

    }
?>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7050373

复制
相关文章

相似问题

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