[英]JQUERY & php post error 500 (server internal error)
我在開發的Web應用程序中遇到錯誤,我確信這是非常基本的錯誤。
每當我在網上運行此代碼時,chrome調試器都會向我返回此錯誤:
POST http://my_ip/server_wrapper.php 500 (Internal Server Error)
這是JQUERY,js文件片段”
this.post = function () {
$.post ("server_wrapper.php",
{
_id: this.id,
_question: this.question,
_type: "none"
},
function (data, status) {
alert ("DATA: " + data + " status: " + status);
}
);
}
這是php文件:
<?php
if (isset($_POST["_question"]) && isset($_POST["_type"]) && isset($_POST["_id"])) {
$question = $_POST["_question"];
$type = $_POST["_type"];
$id = $_POST["_id"];
$con = mysqli_connect ("localhost", "user", "pass", "database");
if (mysqli_connect_errno($con)) {
echo "Failed to connecto to db";
} else {
mysqli_query ($con, "INSERT INTO questions (id, question, type) VALUES ('$id','$question','$type')");
}
mysqli_close ($con);
}
?>
這是一遍又一遍的日志返回:
PHP Fatal error: Call to undefined function mysqli_connect() in /var/www/server_wrapper.php
要在頁面上顯示錯誤:
<?php
ini_set('display_errors', '1');
ini_set('error_reporting', E_ALL);
?>
首先,將在頁面本身上啟用錯誤顯示,而不是生成500錯誤。
第二將確保報告所有錯誤。 這包括通知。
建議:編寫甚至不會發出通知的代碼。
查找PHP錯誤日志文件:
grep error_log /etc/php.ini
grep ^error_log /etc/php.ini
要在RedHat系列服務器上安裝MySQL:
yum install mysql.x86_64
yum install mysql mysql-server
chkconfig --level 2345 mysqld on
service mysqld start
mysqladmin -u root password somepassword
如果您想訪問最新的PHP版本,建議您使用以下存儲庫。
wget http://mirrors.coreix.net/fedora-epel/6/x86_64/epel-release-6-7.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
安裝:
rpm -Uvh remi-release-*.rpm epel-release-*.rpm
/bin/rm epel-release-*.noarch.rpm remi-release-*.rpm
perl -pi -e 's/enabled=0/enabled=1/g' /etc/yum.repos.d/remi.repo
yum update (optional - not recommended unless you know what you are doing)
yum install yum-plugin-priorities
確保安裝回購協議后,將其編輯並設置為0,以使您只能根據需要選擇性地使用它們。
yum --enablerepo=remi,epel install whatever
似乎未安裝或啟用mysqli擴展名。 檢查您的php.ini中是否存在extension=mysqli.so
這行,否則啟用它或使用sudo apt-get install php5-mysql
安裝它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.