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

用 . 刷新 PHP 输出缓冲区ob_flush()。见http://php.net/manual/en/function.ob-flush.php

于 2012-10-31T10:09:45.893 回答
0

您可以使用重定向到其他页面,例如

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

并首先在那里执行javascript,几秒钟后只用php重定向回这个页面。问题是在服务器完成它的工作并将 HTML 发送到客户端之前,javascript 不会被执行。

于 2012-10-31T10:16:43.670 回答