我使用php連接到mysql數據庫,並使用以下函數從數據庫中檢索多行,然後將它們添加到數組並將它們發回。我收到內部服務器錯誤或500x錯誤消息。我不確定這段代碼有什麼問題。我試圖找出它,但無法得到它。用新的mysqli查詢獲取多行?
public function getUnreadMessages($uname){
$stmt = $this->conn->prepare("SELECT msgid, title, fromuname FROM messages WHERE touname = ? and status = ?");
$status = 'unread';
$stmt->bind_param("ss", $uname, $status);
if ($stmt->execute()) {
$stmt->bind_result($col1, $col2, $col3);
$stmt->store_result();
$resp = array();
while($stmt->fetch()){
$row = array();
array_push($row, $col1, $col2, $col3);
array_push($resp, $row);
}
$msg = array('msgid' => $msgid,'title' => $title,'fromuname' => $fromuname);
$stmt->close();
return $msg;
} else {
$stmt->close();
return NULL;
}
}
我應該怎麼做呢?是處理返回的結果函數如下
$app->get('/inbox', 'authenticate', function() use ($app){
ob_start("ob_gzhandler");
global $global_user_name;
$db = new DbHandler();
$resp = $db->getUnreadMessages($global_user_name);
$msgs = array();
$msgs['status'] = 'success';
$msgs['version'] = 0.1;
array_push($msgs, $resp);
$app->response()->header('Content-Type', 'application/json');
echo json_encode($msgs);
exit;
});
那是後話與服務器端沒有工作的代碼,它甚至還沒有達到最終的代碼....看看您是否使用實際的URL或不? – 2014-12-04 06:54:59
我正在使用Chrome開發人員工具來監視請求和響應標頭。該請求正在被服務器發送和接收。服務器用500條消息關閉連接。如果網站存在錯誤,我會多次遇到此問題。至於錯誤記錄,我確實啓用了調試。有時會出現一些解析錯誤或微不足道的錯誤。其他時間他們不 – 2014-12-04 15:52:32
服務器是否支持通過URL登錄?我的意思是通過網址傳遞的憑據? – 2014-12-04 17:50:54