Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP MySQL连接_Php_Mysql_Database Connection - Fatal编程技术网

PHP MySQL连接

PHP MySQL连接,php,mysql,database-connection,Php,Mysql,Database Connection,在一个PHP页面上可以有两种类型的MySQL连接吗 目前有一个$link=mysql\u connect和一个$mysqli=new mysqli连接,通过PHP中两个独立的include文件访问 它们都从MySQL数据库中提取数据,但是如果它们都在同一个PHP页面中,第二个连接就不起作用 我是不是错过了一些很明显的东西 mysql $link = mysql_connect("localhost", "root", "root", "abc"); if(!$link) { die('T

在一个PHP页面上可以有两种类型的MySQL连接吗

目前有一个
$link=mysql\u connect
和一个
$mysqli=new mysqli
连接,通过PHP中两个独立的
include
文件访问

它们都从MySQL数据库中提取数据,但是如果它们都在同一个PHP页面中,第二个连接就不起作用

我是不是错过了一些很明显的东西

mysql

$link = mysql_connect("localhost", "root", "root", "abc");
if(!$link)
{
    die('There was a problem connection to the database.  Please contact your survey administrator.');
}

mysql_select_db("root");

$query = "SELECT * FROM tresults";
$result = mysql_query($query);
$total = mysql_num_rows($result);

$query1 = "SELECT * FROM trespondent";
$result1 = mysql_query($query1);
$total1 = mysql_num_rows($result1) - 1;

    $percent = number_format(($total * 100) / $total1);

mysql_close($link);
}

mysqli

$mysqli = new mysqli("localhost", "root", "root", "abc");


/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}

$a = 'q';
$aa = 1;
$r = "$a$aa";
$q = 55;

while($aa <= $q){
$query  .= "SELECT COUNT(". $r .") as Responses, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = -1 ) as NA, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 1 ) as SD, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 2 ) as D, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 3 ) as A, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 4 ) as SA, ((SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 3 ) + (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 4)) as Pos, ((SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 1 ) + (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 2)) as Neg, (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." >= 1) AS Total, ( ((SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 3 ) + (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." = 4)) / (SELECT COUNT(". $r .") FROM tresults WHERE ". $r ." >= -1)  ) *100 AS percentage FROM tresults;";
$aa = $aa + 1;
$r = "$a$aa";

您是否在呼叫第二个连接后关闭了第一个连接

mysql_close($link);
然而,在一个页面上使用两个不同的连接并不是一个很好的例子。 你有什么特别的理由那样使用它吗


阅读更多信息:

在呼叫第二个连接后,您是否关闭了第一个连接

mysql_close($link);
然而,在一个页面上使用两个不同的连接并不是一个很好的例子。 你有什么特别的理由那样使用它吗


阅读更多信息:

好的。我真的不确定您遇到了什么问题,所以我尝试在windows上重新创建这种情况,我的代码使用同一脚本中的两个连接工作

这是我的桌子

这是我运行的代码

这是我的输出:

我能够在一个脚本中使用这两种类型的连接。我不知道你是不是在问这个问题,但我的可能起了作用,因为当我知道一个脚本中有多个连接时,我会告诉php使用哪个连接

一个PHP页面上是否可以有两种类型的MySQL连接?

我就这么做了。除非我从你的问题中得不到什么


我不知道这是否能回答你的问题,但如果不能,我很乐意删除它。顺便说一下,我使用PDO。

好的。我真的不确定您遇到了什么问题,所以我尝试在windows上重新创建这种情况,我的代码使用同一脚本中的两个连接工作

这是我的桌子

这是我运行的代码

这是我的输出:

我能够在一个脚本中使用这两种类型的连接。我不知道你是不是在问这个问题,但我的可能起了作用,因为当我知道一个脚本中有多个连接时,我会告诉php使用哪个连接

一个PHP页面上是否可以有两种类型的MySQL连接?

我就这么做了。除非我从你的问题中得不到什么

我不知道这是否能回答你的问题,但如果不能,我很乐意删除它。顺便说一下,我使用PDO。

是的,你可以

<?php
error_reporting(-1);

$l1 = mysql_connect('127.0.0.1', 'webrunner', 'XXXXXXXXXXX');
mysql_select_db('iceline', $l1);
$l2 = new mysqli('127.0.0.1', 'webrunner', 'XXXXXXXXX', 'iceline' );

var_dump($l1, $l2);

var_dump( mysql_query("select sysdate() from dual", $l1));
var_dump($l2->query("select sysdate() from dual"));
是的,你可以

<?php
error_reporting(-1);

$l1 = mysql_connect('127.0.0.1', 'webrunner', 'XXXXXXXXXXX');
mysql_select_db('iceline', $l1);
$l2 = new mysqli('127.0.0.1', 'webrunner', 'XXXXXXXXX', 'iceline' );

var_dump($l1, $l2);

var_dump( mysql_query("select sysdate() from dual", $l1));
var_dump($l2->query("select sysdate() from dual"));


有什么不起作用?是否存在特定错误?您不能将
mysql\u*
对象和
mysqli\u*
对象混合使用,它们不会有效地相互通信。但只要保持两者之间的分离,就可以同时使用两者。一个可以检索其数据并在页面上使用,另一个可以检索其数据并在页面上使用。(当然,您不应该使用
mysql.*
,但从技术上讲您可以使用。)感谢David-基本上第一个连接
mysql.'会触发并带回数据,然后将数据填充到PHP文件中。问题是
mysqli`连接如果包含在同一页面上,则不会返回任何内容。好吧。。。这并不能真正描述任何类型的问题。什么不起作用?你能展示不起作用的代码并解释你是如何观察问题的吗?我观察问题的方式有两种——当我将
mysqli
连接的代码放在一个单独的PHP页面中时——它起作用并带回数据。当我在原始页面中放置相同的代码并删除
mysql
include时,它就工作了。当我将
mysql
添加回
mysqli
时,它停止工作。有意义吗?不要试图描述代码,你能把它包括在问题中吗?有什么不起作用?是否存在特定错误?您不能将
mysql\u*
对象和
mysqli\u*
对象混合使用,它们不会有效地相互通信。但只要保持两者之间的分离,就可以同时使用两者。一个可以检索其数据并在页面上使用,另一个可以检索其数据并在页面上使用。(当然,您不应该使用
mysql.*
,但从技术上讲您可以使用。)感谢David-基本上第一个连接
mysql.'会触发并带回数据,然后将数据填充到PHP文件中。问题是
mysqli`连接如果包含在同一页面上,则不会返回任何内容。好吧。。。这并不能真正描述任何类型的问题。什么不起作用?你能展示不起作用的代码并解释你是如何观察问题的吗?我观察问题的方式有两种——当我将
mysqli
连接的代码放在一个单独的PHP页面中时——它起作用并带回数据。当我在原始页面中放置相同的代码并删除
mysql
include时,它就工作了。当我将
mysql
添加回
mysqli
时,它停止工作。有意义吗?不要试图描述代码,你能把它包括在问题中吗?是的,连接是关闭的
mysql\u close($link)。同意不理想…遗留代码。有人有同样的问题,似乎正在和答案一起工作谢谢你的回答-不确定答案是否相关。这是一个
相同的
数据库,但有两种连接方式,一种是通过
mysql
连接,另一种是通过
mysqli
@Homer\u J:从代码的角度看,没有区别。两个数据库连接是两个数据库连接,不管它们是否指向同一个数据库。好的,这是有道理的-但我仍然不明白我哪里出错了:-(是的,连接已关闭
mysql\u close($link);
。同意不理想…遗留代码。有人有同样的问题,似乎正在工作