Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как выводить картинку из базы
Форумы портала PHP.SU » » Вопросы новичков » Как выводить картинку из базы

Страниц (2): [1] 2 »
 

1. imediasun - 23 Ноября, 2012 - 15:23:58 - перейти к сообщению
Есть база данных при выборе категории выводятся товары, как вывести картинку соответственно каждому товару?
PHP:
скопировать код в буфер обмена
  1. <?
  2.  if(isset($_GET['id_cat'])){
  3. $name_cat=$_GET['name_cat'];
  4. $id_cat=$_GET['id_cat'];
  5. ?>       
  6. <?
  7. $sql_good="SELECT * FROM goods Where id_cat='$id_cat'";
  8. $query_good=mysql_query($sql_good)or die (mysql_error());
  9. while($row_good=mysql_fetch_assoc($query_good)){
  10. ?>
  11.  <p> <a href="?id_good=<?=$row_good['id_good']?>
  12.  &name_good=<?=$row_good['name_good']?>"><?=$row_good['name_good'];?></a></p>
  13.  
  14.  <?
  15. }
  16. }
  17. ?>
2. malina95 - 23 Ноября, 2012 - 15:29:09 - перейти к сообщению
А картинки лежат в той же таблице?
3. imediasun - 23 Ноября, 2012 - 15:30:59 - перейти к сообщению
malina95 пишет:
А картинки лежат в той же таблице?
да необходимо их выводить в той же ссылке
4. 3d_killer - 23 Ноября, 2012 - 15:32:46 - перейти к сообщению
а зачем в базе хранить картинку? это базу тормозит хранить нужно путь к ней
5. malina95 - 23 Ноября, 2012 - 15:33:15 - перейти к сообщению
Перед
поставьте что то типа такого
PHP:
скопировать код в буфер обмена
  1. <img src = 'http://ваш сайт/<?=$row_good['images_good'];?> alt = '<?=$row_good['images_good'];?>' />


Дальше разберётесь
(Добавление)
забыл закрыть кавычку после сслки...закройте
6. imediasun - 23 Ноября, 2012 - 15:38:10 - перейти к сообщению
3d_killer пишет:
а зачем в базе хранить картинку? это базу тормозит хранить нужно путь к ней


В том то и дело в базе хранится путь в поле 'path' как записать именно в этой ссылке
PHP:
скопировать код в буфер обмена
  1.  
  2. <p> <a href="?id_good=<?=$row_good['id_good']?>
  3.                              &name_good=<?=$row_good['name_good']?>"><?=$row_good['name_good'];?><img src=<?                ?> height="300" ></a></p>
7. malina95 - 23 Ноября, 2012 - 15:39:33 - перейти к сообщению
imediasun пишет:
В том то и дело в базе хранится путь в поле 'path'

значит так
PHP:
скопировать код в буфер обмена
  1. <img src = 'http://ваш сайт/<?=$row_good['path'];?>' alt = '<?=$row_good['path'];?>' />
8. imediasun - 23 Ноября, 2012 - 15:49:04 - перейти к сообщению
malina95 пишет:
imediasun пишет:
В том то и дело в базе хранится путь в поле 'path'

значит так
PHP:
скопировать код в буфер обмена
  1. <img src = 'http://ваш сайт/<?=$row_good['path'];?>' alt = '<?=$row_good['path'];?>' />


PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3.  if(isset($_GET['id_cat'])){
  4.  $name_cat=$_GET['name_cat'];
  5.  $id_cat=$_GET['id_cat'];
  6.  ?>      
  7. <?
  8. $sql_good="SELECT * FROM goods Where id_cat='$id_cat'"; $query_good=mysql_query($sql_good)or die (mysql_error());
  9. while($row_good=mysql_fetch_assoc($query_good)){
  10. ?>
  11. <p> <a href="?id_good=<?=$row_good['id_good']?>
  12.  &name_good=<?=$row_good['name_good']?>"><img src = 'http://farfalla.com.ua/<?=$row_good['path'];?>' alt = '<?=$row_good['path'];?>' /><?=$row_good['name_good'];?></a></p>
  13. <?
  14. }
  15. }
  16. ?>
  17.  
  18.  
Выводит только путь, а именно (.../photos/img1.jpg Товар1 ) а мне надо чтобы было фото, а потом название товара
9. malina95 - 23 Ноября, 2012 - 15:53:38 - перейти к сообщению
если это ваш сайт
Цитата:
http://farfalla.com.ua/
а папка с картинками это
Цитата:
photos
и она находиться в корневой директории то если вы водите на странице которая тоже в корневой директории то заносите в базу такой путь к картинке
а потом просто выводите после адреса сайта... Больше для этого ничего не надо...если вы и сейчас не поняли то учите работу с базой данных и работу с массивами
(Добавление)
хотя я бы на вашем месте вместо того чтобы хранить картинку в базе вместе с папкой, хранил бы просто название картинки что бы потом не запутаться
10. imediasun - 23 Ноября, 2012 - 15:58:59 - перейти к сообщению
malina95 пишет:
если это ваш сайт
Цитата:
http://farfalla.com.ua/
а папка с картинками это
Цитата:
photos
и она находиться в корневой директории то если вы водите на странице которая тоже в корневой директории то заносите в базу такой путь к картинке
а потом просто выводите после адреса сайта... Больше для этого ничего не надо...если вы и сейчас не поняли то учите работу с базой данных и работу с массивами
(Добавление)
хотя я бы на вашем месте вместо того чтобы хранить картинку в базе вместе с папкой, хранил бы просто название картинки что бы потом не запутаться

так я так и храню, помогите мне это просто сформулировать в ссылке с массивом, вы верно сказали и название сайта и название папки
11. 3d_killer - 23 Ноября, 2012 - 16:05:21 - перейти к сообщению
храни полный путь, ведь название сайта меняться не будет
12. malina95 - 23 Ноября, 2012 - 16:06:25 - перейти к сообщению
Если у вас в базе храниться так как я сказал :
Цитата:
photos/img1.jpg
или
Цитата:
img1.jpg
то просто вставьте в картинку путь до неё(элемент массива 'path') а после того как написали картинку просто в ссылке выведите другой элемент массива в котором название
Цитата:
<?=$row_good['name_good']?>


Будет примерно так
PHP:
скопировать код в буфер обмена
  1. <?
  2.  
  3.  if(isset($_GET['id_cat'])){
  4.  
  5.  $name_cat=$_GET['name_cat'];
  6.  
  7.  $id_cat=$_GET['id_cat'];
  8.  
  9.  ?>      
  10.  
  11. <?
  12.  
  13. $sql_good="SELECT * FROM goods Where id_cat='$id_cat'"; $query_good=mysql_query($sql_good)or die (mysql_error());
  14.  
  15. while($row_good=mysql_fetch_assoc($query_good)){
  16.  
  17. ?>
  18.  
  19. <p> <a href="?id_good=<?=$row_good['id_good']?>
  20.  
  21.  &name_good=<?=$row_good['name_good']?>"><img src = 'http://farfalla.com.ua/// это путь до неё<?=$row_good['path'];?>//' alt = '<?=$row_good['path'];?>' />//это название ссылки<?=$row_good['name_good'];?>//</a></p>
  22.  
  23. <?
  24.  
  25. }
  26.  
  27. }
  28.  
  29. ?>
13. imediasun - 23 Ноября, 2012 - 16:10:59 - перейти к сообщению
malina95 пишет:
Если у вас в базе храниться так как я сказал :
Цитата:
photos/img1.jpg
или
Цитата:
img1.jpg
то просто вставьте в картинку путь до неё(элемент массива 'path') а после того как написали картинку просто в ссылке выведите другой элемент массива в котором название
Цитата:
<?=$row_good['name_good']?>


Будет примерно так
PHP:
скопировать код в буфер обмена
  1. <?
  2.  
  3.  if(isset($_GET['id_cat'])){
  4.  
  5.  $name_cat=$_GET['name_cat'];
  6.  
  7.  $id_cat=$_GET['id_cat'];
  8.  
  9.  ?>      
  10.  
  11. <?
  12.  
  13. $sql_good="SELECT * FROM goods Where id_cat='$id_cat'"; $query_good=mysql_query($sql_good)or die (mysql_error());
  14.  
  15. while($row_good=mysql_fetch_assoc($query_good)){
  16.  
  17. ?>
  18.  
  19. <p> <a href="?id_good=<?=$row_good['id_good']?>
  20.  
  21.  &name_good=<?=$row_good['name_good']?>"><img src = 'http://farfalla.com.ua/// это путь до неё<?=$row_good['path'];?>//' alt = '<?=$row_good['path'];?>' />//это название ссылки<?=$row_good['name_good'];?>//</a></p>
  22.  
  23. <?
  24.  
  25. }
  26.  
  27. }
  28.  
  29. ?>

PHP:
скопировать код в буфер обмена
  1. <img src = 'http://farfalla.com.ua/<?=$row_good['path'];?>' height="50">

Не выводит массив
14. malina95 - 23 Ноября, 2012 - 16:14:26 - перейти к сообщению
значит там пусто...проверьте есть ли картинка в базе, если есть и не выводит значит сами ищите ошибку http://myrusakov[dot]ru/php-finderror[dot]html
15. imediasun - 23 Ноября, 2012 - 16:35:29 - перейти к сообщению
. ../photos/ . AS125-carrie-Ivory-patent-pair-v iew-200x150.jpg .

вот это храниться в базе данных. с точностью до символа
так выводит ссылку

так не выводит картинку
PHP:
скопировать код в буфер обмена
  1.  <img src = '<? $row_good['path']?>' height="50">
  2.  

 

Powered by ExBB FM 1.0 RC1