私のajaxメソッドが実際に呼び出されることはありません。私はこのコードを使用しています:
$("#client").change(function(e) {
var url = 'https://...../clientToStations.php';
var data = 'ident=' + $("option:selected", this).val()
alert("curl -X POST -d " + data + ' ' + url);
$.ajax({
type: POST,
url: url,
data: data,
}).done(function(html) {
alert('Done');
$("#station").html(html).removeAttr('disabled');
}).fail(function( jqXHR, textStatus, errorThrown ) {
alert('fail');
}).always(function () {
alert('always');
});
});
予想される時点でアラートが表示されます。curl コマンドをコピーして端末に貼り付けると、期待どおりの正確なデータが返されます。ただし、ここでは、done/fail/always のいずれのメソッドもヒットしていません。
次に、clientToStations.php を編集して error_log() を実行し、呼び出されたことを伝えました。ajaxが「実行」されると、そのメッセージはApacheエラーログに表示されません。curl コマンドを手動で実行すると、正しく表示されます。ログに他のエラーは表示されません。