PHP/HTML/mySQL URL 缓存问题

标签 php mysql html caching

我有这个功能: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/

相关文章:

php - JavaScript 返回和 php 问题 (true,false)

php - 未知的 mysql 语法错误代码在工作台中运行良好,但在 php mysqli 中抛出错误

PHP - 显示 Json 编码消息

mysql - 选择左连接两个表,其中今天位于第二个表中的两个日期时间列之间

php - 在 WooCommerce 购物车页面中的每个产品下方添加运输类别

javascript - 如何在PHP中向数据库提交多个表单?

php - 选择产品名称类似的订单

html - 悬停同一父级的一个 DIV 时影响多个 DIV

css - 如何强制一个很长的词与图像保持在同一行?

javascript - 您可以选择流向下一行的类的所有 div 吗?