为什么图片不会出现在我的网站上

时间:2013-12-08 22:49:09

标签: php mysql imdb

我从imdb(使用api第三方)链接了一些图像,我将它加载到我的sql db然后php app .. 但当我点击显示所有封面时,他们会出现:/为什么? 我使用http://www.omdbapi.com/ api

这是我的网站,点击“Ver Lista de Filmes Capas”点击 http://web.ist.utl.pt/ist170438/aux/mymdb.php

<?php
                try
                {
                $host = "xxxx";
                $user ="xxxx8";
                $password = "xxx";
                $dbname = $user;
                $db = new PDO("mysql:host=$host;dbname=$dbname", $user, $password);
                $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                $sql = "SELECT * FROM Filme;";
                $result = $db->query($sql);
                $i = 0;
                $per_row = 3;
                echo '<table><tr>';

                foreach ($result as $row)
                {

                echo '<td><img src="'.$row['imageLink'].'" width="200" height="200" /></td>';
                if(++$i % $per_row == 0 && $i > 0 && $i < $count) {
                    # Close the row
                    echo '</tr><tr>';
                    }
            }

                for($x = 0; $x < $per_row - $i % $per_row; $x++) {
                 echo '<td></td>';
                }
                echo '</tr></table>';

                /*
                echo("<table border=\"5\" cellspacing=\"5\">\n");
                $per_row = 6;
                foreach($result as $row)
                {
                echo '<td><img src="'.$row['imageLink'].'" width="100" height="100" /></td>';
                # If three cells have been printed, and we're not at the last image
                if(++$i % $per_row == 0 && $i > 0 && $i < $count) {
                    # Close the row
                    echo '</tr><tr>';
                }
                # If the last row isn't 'full', fill it with empty cells
                for($x = 0; $x < $per_row - $i % $per_row; $x++) {
                    echo '<td></td>';
                }
                echo '</tr></table>';*/
                $db = null;
                }
                catch (PDOException $e)
                {
                echo("<p>ERROR: {$e->getMessage()}</p>");
                }
        ?>



public void descobreInfoFilme(String nomeFilme, String nomePasta){
        try{
            String urls = KEY_BDAUX + nomeFilme;
            double classificacao = 0;
            String sinopse = null;
            String urlImagem = null;
            String imdbl = "http://www.imdb.com/title/";
            String id= null;
            int ano = 0;
            LinkedList<String> listaGeneros = new LinkedList<String>();     
            URL url = new URL(urls);
            InputStream is = url.openStream();
            JsonReader rdr = Json.createReader(is);
            JsonObject obj = rdr.readObject();
            Filme f = getFilme(nomePasta);
            urlImagem = obj.getString("Poster");
            id = obj.getString("imdbID");
            sinopse = obj.getString("Plot");
            ano = Integer.parseInt(obj.getString("Year"));
            listaGeneros.add(obj.getString("Genre"));
            f.setLinkImdb(imdbl + id);
            f.setLinkImagem(urlImagem);
            f.setGenero(listaGeneros);
            f.setSinopse(sinopse);
            f.setAno(ano);
            f.setClassificacao(classificacao);
            listaGeneros = null;

        }catch(Exception e){
            System.out.println("ERRO AO DESCOBRIR informacoes DO IMDB DO FILME " + nomePasta);
            System.out.println("ERRO AO DESCOBRIR informacoes DO IMDB DO FILME " + nomeFilme);
            _listaFilmesErrados.add(nomePasta);
            e.printStackTrace();
        }

    }

2 个答案:

答案 0 :(得分:0)

您正在直接链接到IMDB图像。很可能是热链接保护阻止您这样做。

您应该自己托管图片,而不是使用其他网站的带宽。

答案 1 :(得分:0)

有保护,只需下载图片,并将其放入您网站的目录中。这也可以防止文件永远不会脱机,因此工作量减少。