繁体   English   中英

连接到单独的“数据库连接文件”

[英]Connecting To Separate 'Database Connect File'

我有两个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();
             }

我的SELECT文件如下:

             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);
   ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM