2016-12-12 3 views
0

Я участвую в использовании NetBeans для создания очень простых веб-страниц с использованием HTML, PHP и SQLite. Пока все в порядке. Проблема заключается в том, что изображения не отображаются на странице moviedetails.php. Все остальное, включая titles, ratings и description для каждой записи в таблице, отлично работает. (Я извлечение строк из таблицы базы данных.) Вот мой код:Не удается отобразить содержимое таблицы, содержащую URL из базы данных

(Это очень ново для меня, так что если это простой ошибки, извините за тратить свое время: /)

Index.php

<!DOCTYPE html> 

<html> 
    <head> 
    <meta charset="UTF-8"> 
    <title></title> 
</head> 
<body> 
    <?php 
    $pdo = new PDO('sqlite:movies.db');    //Import SQLite database "movies.db" to a Var 
    $query = $pdo->query("SELECT * FROM movie"); 

    while ($row = $query->fetch(PDO::FETCH_ASSOC)) { 
     //For each id number in db, echo a hyperlink containing that ID's title and 
     echo '<a href="moviedetails.php?id=' . htmlentities($row['id']) . '">' . htmlentities($row['title']) . '</a>'; 
     echo '<br>'; 
    } 
    ?> 
</body> 



moviedetails.php

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="UTF-8"> 
    <title></title> 
</head> 
<body> 

    <?php 
    $pdo = new PDO('sqlite:movies.db');        //Using movies.db 
    $query = $pdo->prepare("SELECT * FROM movie WHERE id=:id");  //Prepare this statement 
    $id = filter_input(INPUT_GET, 'id', FILTER_SANITIZE_NUMBER_INT); //GET INPUT from Variable 'id' and FILTER anything which isn't a number 
    $query->bindParam(':id', $id, PDO::PARAM_INT);      //Bind :name 'id' to a $id variable 
    $query->execute();             //Execute the prepared statement 
    $row = $query->fetch(PDO::FETCH_ASSOC);       //Fetch next row of results 


    //var_dump($row); 
    //display title, description and rating 
    echo '<h1>'.htmlentities($row['title']).'</h1>';    //Echo 'Title' from db into a heading 
    echo '<a href="'.htmlentities($row['image']).'"></a>';   //Echo 'image from db into a link 
    echo '<p>'.htmlentities($row['description']).'</p>';   //Echo 'description' from db to paragraph 
    echo '<p>Rating: '. htmlentities($row['rating']).'</p>';   //Echo 'rating' from db to paragraph 
    ?> 


</body> 

Вот моя база данных в изображении, так как это самый простой способ, чтобы показать вам: http://i.cubeupload.com/TBI5Fv.png

Вот один из веб-страниц, которые должны Diplay ссылка. Тем не менее, он содержит только другие поля таблицы: http://i.cubeupload.com/1tcfsU.png

Странная вещь, она не дает мне никаких ошибок, поэтому я не знаю, где я иду не так.

Надежда кто-то может помочь :)

ответ

0

Ваш <a> тег пуст, поэтому она невидима.

echo '<a href="'.htmlentities($row['image']).'"></a>'; 

Вы должны поместить некоторый контент, который будет отображаться в виде ссылки, как это:

echo '<a href="'.htmlentities($row['image']).'">THIS IS LINK TO IMAGE</a>'; 

Если вы хотите, чтобы отобразить само изображение вместо ссылки, вы должны использовать <img> тег, как это:

echo '<img src="'.htmlentities($row['image']).'"/>'; 
+0

Thank! В то же время я понял, что пытался использовать тег .... Редактировать: изображение, похоже, связано, но сломано. Не знаете, почему это произошло:/http://i.cubeupload.com/4HW5dO.png – Lewis

+1

** Nevermind! Исправлено также: D Еще раз спасибо! ** – Lewis

Смежные вопросы