javascript - 无法在 javascript 中使用 php 读取文件夹内的图像
问题描述
我有一个文件夹,每 10 分钟图像将从服务器下载到特定文件夹到我的本地服务器,然后我有一个脚本可以在下载图像后读取图像,但不幸的是它不起作用。
我使用 ajax 到 php 文件从服务器下载图像,这是 php 文件中的代码:
while($row = $query->fetch_assoc()) {
$image_name = 'ads-id-'.$row['id'].'.gif';
$image_url = 'http://dev.websiteprojectupdates.com/axul-display/assets/ads/'.$image_name;
file_put_contents('assets/ads/'.$image_name, file_get_contents($image_url));
}
ajax 成功后,它执行以下代码来读取图像:
var output = '<?php $dirname = "assets/ads/"; ?>'
output += '<?php $images = glob($dirname."*.gif"); ?>'
output += '<?php foreach($images as $image) { ?>'
output += '<?php echo '<div class="col-md-12">'; ?>'
output += '<?php echo '<div class="card" style="border: 0px;">'; ?>'
output += '<?php echo '<img class="card-img-top" src="'.$image.'" alt="ads" /><br />'; ?>'
output += '<?php echo '</div>'; ?>'
output += '<?php echo '</div>'; ?>'
output += '<?php } ?>';
$('.sl-ads-holder').append(output);
解决方案
你想在 php 端做 php 部分,你错误地混合了 PHP 和 JavaScript。
首先,做你已经拥有的 php,然后你想在这个页面上运行另一个脚本,在第一个之后。
while($row = $query->fetch_assoc()) {
$image_name = 'ads-id-'.$row['id'].'.gif';
$image_url = 'http://dev.websiteprojectupdates.com/axul-display/assets/ads/'.$image_name;
file_put_contents('assets/ads/'.$image_name, file_get_contents($image_url));
}
$dirname = "assets/ads/";
$images = glob($dirname."*.gif");
foreach($images as $image): ?>
<div class="col-md-12">
<div class="card" style="border: 0px;">
<img class="card-img-top" src="<?php echo $image ?>" alt="ads" /><br />
</div>
</div>
<?php endforeach ?>
在您的 ajax 上,您将获得作为 html 的返回数据,您可以附加:
success: function(response) {
$('.sl-ads-holder').append(response);
}
推荐阅读
- javascript - 如何使用水平滚动设置在容器内具有绝对位置的父元素的 li 元素定位
- ios - 在后台录制 IOS 模拟器视频和模拟器音频
- tfs - 将 VSTS 云迁移到自托管 TFS 服务器
- c++ - 获取对 unordered_map operator[] 返回值的引用
- json - 如何从这个 JSON 文件中获取一个单词
- windows - 批处理脚本无法将变量的内容传递给其他变量
- javascript - 嵌套列表也可以拖放吗
- php - 完整的活动信息 Facebook PHP SDK
- javascript - 如何使用节流来获取事件目标?
- javascript - 如何让 Angular2+ 路由器在 Angular2+/AngularJS 混合应用程序上工作?