PHP中的连接错误

PHP中的连接错误,php,mysql,connection,database-connection,Php,Mysql,Connection,Database Connection,哦,我刚刚开始学习PHP和MySQL。一切都很顺利,直到这件事使我头脑清醒。 问题就在这里。 我在同一个目录中有两个php文件 mysql.php--> <?php require("connect.php")or die(mysql_error()); ?> <?php error_reporting(0); $connect=mysql_connect("localhost","root","") or die(mysql_error()); mysql_select_d

哦,我刚刚开始学习PHP和MySQL。一切都很顺利,直到这件事使我头脑清醒。 问题就在这里。 我在同一个目录中有两个php文件

mysql.php-->

<?php
require("connect.php")or die(mysql_error());
?>
<?php
error_reporting(0);
$connect=mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("phpacademy")or die(mysql_error());
echo"Connected!";
?>

connect.php-->

<?php
require("connect.php")or die(mysql_error());
?>
<?php
error_reporting(0);
$connect=mysql_connect("localhost","root","") or die(mysql_error());
mysql_select_db("phpacademy")or die(mysql_error());
echo"Connected!";
?>

问题是,每当我直接运行connect.php脚本时,它都可以正常工作。 但是,当我运行mysql.php连接到另一个脚本时,会出现以下错误:

警告:require(1):无法打开流:第3行的C:\xampp\htdocs\stckovrflw1\mysql.php中没有此类文件或目录

致命错误:require():无法打开第3行C:\xampp\htdocs\stckovrflw1\mysql.php中所需的“1”(include_path=”;C:\xampp\php\PEAR)

即使文件存在并且拼写明显不正确,也无法获取该文件。 最令人惊奇的是,一旦我去掉了“要么死,要么死”这个词,一切都像一个符咒。 由于我是初学者,我不知道发生了什么事。我认为or die()只是为了让开发人员或用户帮助查看确切的错误,但在本例中,它本身就是导致错误的原因

一定要帮忙

提前感谢……:)


注意:我也在代码中提到的本地主机上运行。

它是mysql\u select\u db而不是mysql\u selectdb

顺便说一句,如果您已经开始学习php和mysql,最好使用mysqli而不是mysql进行培训

您不必在require行中使用die(),如果文件不存在,PHP将自动抛出错误

供参考:


die()方法在调试时很方便是的!!当您想停止执行某些循环或代码流时,当您想分析作为输出的变量和不作为输出的变量时,这是正确的

这是mysql\u select\u db而不是mysql\u selectdb

顺便说一句,如果您已经开始学习php和mysql,最好使用mysqli而不是mysql进行培训

您不必在require行中使用die(),如果文件不存在,PHP将自动抛出错误

供参考:


die()方法在调试时很方便是的!!当您想停止执行某些循环或代码流时,当您想分析作为输出的变量和不作为输出的变量时,这是正确的

这是mysql\u select\u db而不是mysql\u selectdb

顺便说一句,如果您已经开始学习php和mysql,最好使用mysqli而不是mysql进行培训

您不必在require行中使用die(),如果文件不存在,PHP将自动抛出错误

供参考:


die()方法在调试时很方便是的!!当您想停止执行某些循环或代码流时,当您想分析作为输出的变量和不作为输出的变量时,这是正确的

这是mysql\u select\u db而不是mysql\u selectdb

顺便说一句,如果您已经开始学习php和mysql,最好使用mysqli而不是mysql进行培训

您不必在require行中使用die(),如果文件不存在,PHP将自动抛出错误

供参考:

die()方法在调试时很方便是的!!当您想停止执行某些循环或代码流时,当您想分析作为输出得到的变量和不作为输出的变量时,这是真的(0)

$connect=mysql\u connect(“本地主机”、“根目录”、“根目录”)或die(mysql\u错误())

mysql_selectdb(“phpacademy”,$connect)或die(mysql_error())

echo“已连接!”

错误报告(0)

$connect=mysql\u connect(“本地主机”、“根目录”、“根目录”)或die(mysql\u错误())

mysql_selectdb(“phpacademy”,$connect)或die(mysql_error())

echo“已连接!”

错误报告(0)

$connect=mysql\u connect(“本地主机”、“根目录”、“根目录”)或die(mysql\u错误())

mysql_selectdb(“phpacademy”,$connect)或die(mysql_error())

echo“已连接!”

错误报告(0)

$connect=mysql\u connect(“本地主机”、“根目录”、“根目录”)或die(mysql\u错误())

mysql_selectdb(“phpacademy”,$connect)或die(mysql_error())


echo“已连接!”

的优先级一次高于要求/要求。因此php评估

('connect.php') or die("blah blah")
在通过要求的结果之前
接受两个布尔操作数。('connect.php')的计算结果为
true
,因此整个表达式为true,并且

要求为true

被调用

require
将字符串作为参数,因此php将true转换为1

因此,在您的案例中,它变成了
require 1

生成的
打开错误失败

bugs.php.net上报告的一个bug说:

因为include()是一种特殊的语言构造,所以括号不是 需要围绕其参数。比较返回值时要小心


的优先级高于require/require\u一次

('connect.php') or die("blah blah")
在将结果传递给require之前。
接受两个布尔操作数。('connect.php')的计算结果为
true
,因此整个表达式为true,并且

require true;

被调用

require
将字符串作为参数,因此php将true转换为1

因此,在您的案例中,它变成了
require 1

生成的
打开错误失败

bugs.php.net上报告的一个bug说:

因为include()是一种特殊的语言构造,所以括号不是 需要围绕它的论点。比较返回值时要小心


的优先级高于require/require\u一次。因此php评估

('connect.php') or die("blah blah")
在通过要求的结果之前
<?php
require("connect.php");

if(!$connect)
    die(mysql_error());
?>
<?php
set_include_path('C:\xampp\htdocs\stckovrflw1\');
require("connect.php")or die(mysql_error());
?>