2014-04-27 119 views
0

这里有一个简单的读取操作下面的代码: -PHP代码在本地主机上工作,但不能在服务器

 $con = new mysqli('localhost','xyz','xyz','xyz'); 

     $stmt = $con->prepare("SELECT u.name,u.email,u.api_key,u.status FROM users u WHERE u.email = ?"); 
     $stmt->bind_param('s',$email); 
     if($stmt->execute()){ 

      $user = $stmt->get_result()->fetch_assoc(); 
      var_dump($user); 
      $stmt->close(); 

     }else{ 
      echo 'null'; 
     } 

它不打印“空”,但什么也不打印。 这是PHP版本,它是5.5本地主机和5.4.9在服务器之间的区别?

+1

你有你的数据库服务器,就像在本地机器?您检查了服务器日志(在linux中:/ var/log/apache2 /文件夹) – Hardy

+0

检查语句的错误输出,如果执行失败。 – Sirko

+1

服务器上启用mysqli驱动程序?启用error_reporting(E_ALL); – Maykonn

回答

0

试试这个代码,看看会发生什么:

$con = mysqli_connect('localhost','xyz','xyz','xyz'); 
if(!$con){ 
    die("Error : " . mysqli_error); 
} 
$stmt = $con->prepare("SELECT u.name,u.email,u.api_key,u.status FROM users u WHERE u.email = ?"); 
$stmt->bind_param('s',$email); 
if($stmt->execute()){ 
    $user = $stmt->get_result()->fetch_assoc(); 
    var_dump($user); 
    $stmt->close(); 
}else{ 
    echo 'null'; 
} 
+0

试过但没有运气。我能够连接到数据库。 – Tejas

+0

所以它没死,对吧? – Jamie

+0

是的。问题是在get_result()我猜没有什么返回。 – Tejas

相关问题