0

PHP プロセス全体が完了する前に、(フォーム送信後に) HTML コードを出力したいと考えています。以下のコードは、copy() と system() が完了した後にのみウィンドウを開きます。

<script language="javascript">
window.open("copyProgress.php?source=<?php echo $_POST['element_100'];?>","","width=400,height=400,resizable=no,toolbar=no,location=no,directories=no,status=no,menubar=no");
</script>

<?php

sleep(3);

//move the file to the net disk
if(copy($tempUploadDir."\\".$_POST['element_100'], $dir.$subfolder."\\".$filename)) { 
    unlink($tempUploadDir."\\".$_POST['element_100']);  
} else {   
    die("problem with uploading file. ".$tempUploadDir."\\".$_POST['element_100']);
}

system("x264.exe $args");

?>

最初に HTML (JS) コードを表示 (および動作) させるにはどうすればよいか教えてください。

ありがとう、マーク。

4

2 に答える 2

0

次のような他のページへのリダイレクトを使用できます

$redirect = "http://www.example.com/";
header( 'Location: '.$redirect );   

最初にそこでjavascriptだけを実行し、数秒後にphpだけでこのページにリダイレクトします。問題は、サーバーが作業を完了してHTMLをクライアント側に取得する前にJavaScriptが実行されないことです。

于 2012-10-31T10:16:43.670 に答える
0

PHP出力バッファーを。でフラッシュしますob_flush()http://php.net/manual/en/function.ob-flush.phpを参照してください

于 2012-10-31T10:09:45.893 に答える