等待几秒钟让下载完成,然后执行PHP代码

时间:2013-08-20 11:29:53

标签: php javascript

我正在使用Google Chart API,我将图表转换为图片,然后将其下载到我的下载文件夹中。现在下载后我想重命名图像文件并将其移动到我在PHP中使用rename()函数的其他目录。

现在我面临的问题是PHP中的rename()函数在我执行下载图像功能(在javascript中)之前执行,因此它给出了显示“未找到指定文件”的错误。 / p>

我尝试过使用PHP延迟函数usleep()和javascript函数setTimeOut(),我也尝试过“浪费时间”的循环。但没有任何成功。 有人可以告诉我一些我可以实现的目标。

This is my code:

/*Firstly there is the google line chart code */
In body I have:
<script type="text/javascript">
onload = function download_this(){
    grChartImg.DownloadImage('chart_div');
}
</script>

//PHP
<?
$changefrom = "C:/somelocation/Downloads/download" ;
     $changeto = __DIR__.'\mygraph';
     rename($changefrom, $changeto.'.png');
?>

这是转换和下载图形图像的grchartimg库。 我想要覆盖保护,这就是我使用重命名的原因。因为重命名后我想将这个图像嵌入PDF文件中。

1 个答案:

答案 0 :(得分:0)

为什么不使用PHP下载图像?

download image file from given google chart api url using php

header('Content-Type: image/png');
header('Content-Disposition: attachment; filename="chart.png"');
$image = file_get_contents('http://chart.apis.google.com/chart?    chs=300x300&cht=qr&chld=L|0&chl=http%253A%252F%252Fnetcane.com%252Fprojects%252Fyourl%252F3');
header('Content-Length: ' . strlen($image));
echo $image;