gpt4 book ai didi

PHP/HTML/mySQL URL 缓存问题

转载 作者:行者123 更新时间:2023-11-29 06:16:49 25 4
gpt4 key购买 nike

我有这个功能:http://pastebin.ca/2058418

它主要检查表中是否包含乐队图片的一些 URL。如果是,则对表格进行随机排序,选择第一个结果,然后输出插入图片的html代码。如果表中没有该特定波段的图片,则它会下载包含图像 URL 的 XML 文件,解析 XML 并将其插入到表中,然后像以前一样获取图像的 HTML 代码。

就 html 输出而言,您无法判断图像 URL 是否已被缓存。但是,当图像 URL 被缓存(第一次)时,无论您使用什么 Web 浏览器都不会显示该图像。 HTML 很好 - 图像链接正确。

你有什么想法吗?包含此功能的网站的实时版本如下:http://redfern.me/similar/ 。我刚刚清空了表,所以应该不会有太多缓存的 URL。尝试选择一个频段,然后查看图像是否加载。您可以通过查看页面底部来判断 URL 是否已缓存。

最佳答案

基本上看起来您在第一次获取图像后就没有返回。

 <?php function getimage($artist){
$api_key = "XXXXXXXXX";
$iquery = mysql_query("SELECT url FROM `images` WHERE artist = '".$artist."' ORDER BY RAND() LIMIT 1");
if($artist != ""){
$artist = str_replace(" ", "+", $artist);
if(mysql_num_rows($iquery) == 0){
$url = "http://developer.echonest.com/api/v4/artist/images?format=xml&api_key=".$api_key."&name=".$artist."&results=20";
$data = file_get_contents($url);
if($data=false){return 'Error Getting Image';}

$images = new SimpleXMLElement($data);

foreach($images as $image){
foreach($image->image as $indimage){
$insiquery = "INSERT INTO images (id, artist, url) VALUES (NULL, '$artist','".$indimage->url."')";
mysql_query($insiquery);
}
}
return "<img src=\"".$indimage->url."\" alt=\"$artist image\" />";
}else{
$imgurl = mysql_fetch_array($iquery);
return"<img src=\"".$imgurl['url']."\" alt=\"$artist image\" />";
}

}
else{
return"Image Aquire Function Error: <i>No Band Specified</i>";
}
return null;
}?>


echo getimage('Britney Spears');

关于PHP/HTML/mySQL URL 缓存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5995036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com