以下是我的代码:
<script type="text/javascript">
function SaveToDisk(fileUrl, fileName) {
var hyperlink = document.createElement('a');
hyperlink.href = fileUrl;
hyperlink.target = '_blank';
hyperlink.download = fileName || fileUrl;
var mouseEvent = new MouseEvent('click', {
view: window,
bubbles: true,
cancelable: true
});
hyperlink.dispatchEvent(mouseEvent);
(window.URL || window.webkitURL).revokeObjectURL(hyperlink.href);
}
</script>
</head>
<body>
<?php
$newtarget = "0C004B290BF2D95F";
$filename = 'C:/Users/FOO/Downloads/'.$newtarget.'.txt';
if (file_exists($filename)) {
unlink($filename);
}
?>
<script type="text/javascript">
SaveToDisk('http://www.ticketmaster.com/json/resale?command=get_resale_listings&event_id=<?php print $newtarget; ?>','<?php print $newtarget; ?>.txt')
</script>
<?php
$newlink = file_get_contents('C:\\Users\\FOO\\Downloads\\'.$newtarget.'.txt');
当文件被删除时,file_get_contents
php函数在SavetoDisk
重写磁盘上的文件之前运行。
&#34;无法打开流:没有这样的文件或目录&#34;。
当我不删除文件时,它可以正常工作。我试着在调用javascript函数后立即插入sleep(10)
,但仍然得到了错误,莫名其妙地在10秒后写了文件......有什么提示吗?
答案 0 :(得分:0)
PHP由您的服务器处理,而Javascript由用户的浏览器处理,因此无论您如何在同一个.php文档中订购函数,Javascript将始终在PHP处理后运行。
如果您需要在执行Javascript后运行PHP,请查看jQuery的post函数以从您的Javascript调用PHP文件。我强烈建议您查看一些在线学习工具,例如codecademy,以便更好地掌握PHP / JS。
答案 1 :(得分:0)
你不能这样做。 PHP在服务器上执行,JavaScript在客户端(Web浏览器)上执行。
右键单击您的Web浏览器,然后选择“查看源”以检查内容。你不会在那里看到你的PHP。