我正在使用AJAX來觸發我的validation.php文件。我想在該文件中連接到我的數據庫,所以我包含了connect.php文件,但它導致了一些問題。Require_once與JSON編碼混合
<script type="text/javascript">
$(document).ready(function(){
$("#offer-form").submit(function(e){
e.preventDefault();
$.ajax({
type : 'POST',
data: {
'name': $('#name-input').val()
},
url : 'validation.php',
success : function(data) {
$("#name-error").text(data["name-error"]);
}
});
return false;
});
})
validation.php
<?php
header('Content-Type: application/json');
$error = array("name-error" => "");
require_once "connect.php";
$error['name-error'] = "error";
echo json_encode($error);
?>
connect.php
<?php
$serverName = "localhost";
$dbName = "test";
$username = "root";
$password = "";
try
{
$conn = new PDO("mysql:host=$serverName; dbname=$dbName",
$username,
$password,
array(PDO::ATTR_EMULATE_PREPARES => false,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION)
);
echo "Connected successfully";
}
catch (PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
}
?>
我簡化了我的代碼。問題是在我的validation.php文件中使用require_once導致名稱錯誤不能顯示。另一個奇怪的事情是,當我在瀏覽器中輸入.../validation.php時,這個文件可以正常工作。我已經在我的主文件(包括上面顯示的腳本)中使用connect.php,並且它工作正常。
你的迴應無效JSON – apokryfos
你是什麼意思? –