私はjQueryとajaxがまったく初めてです。現在、ステートメントを.phpファイルに投稿してステートメントを実行するjavascriptファイルからローカルSQLサーバーにテーブルを作成しようとしています。
.js ファイル:
function executeStatement(sqlStatement){
$.ajax({
type: "post",
data: sqlStatement,
cache: false,
url: "api.php",
dataType: "text",
error: function(xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
},
success: function ()
{
alert ("Success!!");
}
});
}
.php ファイル:
require_once('PhpConsole.php');
PhpConsole::start();
debug('HERE!!!');
$sqlStatement = $_POST['sqlStatement'];
$host = "*****";
$user = "*****";
$pass = "*****";
$databaseName = "db_user_data";
// Create connection
$con = mysqli_connect($host, $user, $pass, $databaseName);
// Check connection
if (mysqli_connect_errno($con)){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else{
$con->query($sqlStatement);
header('Location: success.php');
}
PHP コンソールを使用して .php ファイルをデバッグしますが、この場合、最初のログでも「HERE!!!」コンソールに出力されないので、この .php ファイルに到達するかどうか疑問に思っています。success
いずれにせよ、データベースに変更がない場合でも、executeStatement メソッド内のイベントに到達し、「成功」が出力されます。ちなみに、.php ファイルもローカル サーバーで実行されます。誰かが問題がどこにあるのか考えていますか??
前もって感謝します