我有两个 php 文件。一个 PHP 文件是我连接到 mysql 数据库的详细信息
第二个 PHP 文件对数据库执行 SELECT 函数
我的问题是第二个 PHP 文件似乎没有操作第一个 PHP 文件。
我刚刚开始使用 PDO 命令而不是 MYSQL 命令。当我使用 Require('connect_db'); 时功能一切正常。由于我已经转向 PDO 命令,它不起作用
我收到错误
Call to a member function execute () on a non object in................
我的代码如下:-
connect_db 文件是(我没有显示密码、用户、数据库的字符串:-
try
{
$mysql_link= new PDO("mysql:host=$servername;dbname=dbname;charset=utf8",$username,$password);
$mysql_link->setAttribute(PDO::ATTR_EMULATE_PREPARES,false);
$mysql_link->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
echo "Connected Success";
}
catch(PDOException $e)
{
echo $e->getMessage();
}
我的选择文件如下:-
Require('connect_db.php');
$stmt=$mysql_link->prepare("SELECT cif_train_uid,cif_stp_indicator FROM schedule WHERE cif_train_uid=:cif_train_uid");
$stmt->execute(array(':cif_train_uid'=>$cif_train_uid));
foreach($stmt->fetchAll(PDO::FETCH_ASSOC) as $row) {
echo $row['cif_train_uid'];
echo $row['cif_stp_indicator'];
}
$mysql_link=null;
如果我将所有代码合并到一个文件中,它就可以正常工作。 (两个脚本位于同一文件夹中)。所以它只是 Require () 函数似乎不起作用,但我不明白为什么。感激不尽的任何帮助
最佳答案
我可以看到包含/必需文件导致将代码放入包含文件中时不会发生的问题的唯一原因是包含文件中没有打开的 php 标记:
<?php
^^^^^ this...
try
{
$mysql_link= new PDO("mysql:host=$servername;dbname=dbname;charset=utf8",$username,$password);
...
关于php - 连接到单独的 'Database Connect File',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26663800/