私は、投稿と一緒にパラメータを取得するPHPを使用していますが、プロセスの最後に別のページにリダイレクトされます。画像を表示しているときにAJAXを使用して別のページに電話する
プロセス全体に最大6秒かかることがあるため、ローディングGIFを追加したいと考えました。 イメージを表示する別のページを作成し、AJAXを使用して最初のページを呼び出しました。
私が何を試しても、私はプロセス全体を動作させることができません。 最終的にXMLHttpRequestが読み込めません - 要求されたリソースに 'Access-Control-Allow-Origin'ヘッダーがありません。 Origin 'http://localhost:8888'はアクセスできません。
これは、PHPプロセスファイル呼び出すページのコードです:
logger($lfn, 'DEBUG', 'Redirecting to ' . $url, $email);
header('Access-Control-Allow-Origin: *;');
header("Location: " . $url);
die();
:これが最後のURLにリダイレクトするプロセスのPHPファイル内のコードである
<?php
function generateData(){
global $dpost;
foreach ($_POST as $key => $value){
$dpost .= ',' . $key . ':"' . $value . '"';
}
$dpost .= ',resultType:"pre"';
$dpost = '{' . substr($dpost, 1) . '}';
}
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="default.css">
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
</head>
<body>
<?php generateData(); ?>
<script type="text/javascript" >
console.log('1');
var text='';
$.ajax({
url: 'f-api.php',
type: 'post',
headers: { 'Access-Control-Allow-Origin' : '*'},
crossDomain : true,
content_type: 'application/json',
dataType: 'json',
data: <?php global $dpost; echo $dpost; ?>,
success: function(data) {
console.log('OK')
alert(text);
$('.my_update_panel').html(data);
$('#loading_spinner').hide();
},
error: function(data) {
console.log('Error : ' + data);
},
beforeSend: function(xhr) {
console.log('Before');
xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
}
});
</script>
<div>
<img src="img/loading-ls.gif">
</div>
</body>
</html>
をどのようにこれを修正するための任意のアイデア? それとも、私が探しているものを達成するために別のもの?
あなたはChromeを使用していますか? – KRONWALLED
私が呼んでいるページ、f-api.phpはフォームアクションの宛先です。 f-api.phpからリダイレクトされるターゲットページは、フォームの値によって変更されています。私はあなたの提案でこれを行うことができるとは思わない。 –
それは示唆ではありませんでした。 Chromeでローカルのものをテストしますか? – KRONWALLED