我正在尝试为网站创建后端。我成功创建了它。它在localhost上完美运行。现在,当我将代码移动到服务器时,PHP只是不起作用。它显示一个空的白色屏幕。
它接受一个输入并返回一个JSON输出。可能是什么问题呢 ? 我正在使用Amazon EC2服务器。
这是我的php代码:
<?php
require_once('common/common_database.php');
class user
{
public $id;
public $fName;
public $lName;
public $sex;
public $image;
public $birthday;
public $location;
public function __construct($userId)
{
$this->id = htmlspecialchars ( $userId );
}
public function getDetails()
{
global $dbh;
//getting user's first and last name
$query = "SELECT * FROM `user` WHERE `id` = :id;";
$s = $dbh->prepare ( $query );
$s->bindParam ( ":id" , $this->id );
$s->execute ( );
$r = $s->fetch ( );
$this->fName = htmlspecialchars( $r['firstName'] );
$this->lName = htmlspecialchars ( $r['lastName'] );
$this->location = htmlspecialchars ( $r['location'] );
$this->image = htmlspecialchars ( $r['image'] );
$this->birthday = htmlspecialchars ( $r['birthday'] );
$this->sex = htmlspecialchars ( $r['sex'] );
}
}
if ( isset($_GET['id']) )
{
$newUser = new user( $_GET['id'] );
$newUser->getDetails();
}
else
{
$newUser = 0;
}
$output = json_encode ( $newUser );
header('content-type: application/json');
echo $output;
exit;
?>
答案 0 :(得分:0)
我首先打开错误报告:
ini_set('display_errors', '1');
error_reporting(E_ALL);
答案 1 :(得分:0)
你需要做两件事:
在页面顶部启用错误报告,代码为:
ini_set('display_errors','1'); 使用error_reporting(E_ALL);
检查你的php ini设置。可能需要从php设置(php.ini)启用pdo_mysql。