Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод нескольких изображений под одно id
 
 автор: shmel79   (08.12.2008 в 21:26)   письмо автору
 
 

Народ подскажите, как мне сделать...

Мне нужно вывод информации из одной и тойже базы данных...

Из одной таблицы выходит Заголовок, а из другой должны выходить 3 фотографии...

Как я понимаю.... допусим в одной таблие у меня такие поля:

id
title
description

а в другой

id
usl_id
photo

в uls_id вноситься id от первой таблицы, чтобы при запросе было понятно к какому разделу выводить информацию...
Только не могу это реализовать программно...
Как связать два запроса!?

  Ответить  
 
 автор: DEM(универ)   (09.12.2008 в 10:49)
 
   для: shmel79   (08.12.2008 в 21:26)
 


<?php
$query 1 
mysql_query("SELETCT * FROM `table1` WHERE `id`=1"); //к примеру возьмём первую запісь в БД
$array_query1 mysql_fetch_array($query1); //Засовываем данные із первого запроса в массів
$query2 mysql_query("SELECT * FROM `table` WHERE `usl_id`='".$array_query1['id']."'"); //Выполняем второй запрос. Берём данные в которых поле usl_id равно id нашей записи в первой таблицы
while($arr=mysql_fetch_array($query2))
{
  echo 
"<img src='img/".$arr['photo']."'><BR>";
}

?>


Как я понял вам нужно такое?

  Ответить  
 
 автор: shmel79   (09.12.2008 в 13:54)   письмо автору
 
   для: DEM(универ)   (09.12.2008 в 10:49)
 

Спасибо, щас попробую..

  Ответить  
 
 автор: shmel79   (09.12.2008 в 15:32)   письмо автору
 
   для: DEM(универ)   (09.12.2008 в 10:49)
 


$query1 = mysql_query("SELETCT * FROM `uslug` WHERE `id`='1'",$db); //к примеру возьмём первую запісь в БД 
$array_query1 = mysql_fetch_array($query1); //Засовываем данные із первого запроса в массів 
$query2 = mysql_query("SELECT * FROM `photo` WHERE `usl_id`='".$array_query1['id']."'",$db); //Выполняем второй запрос. Берём данные в которых поле usl_id равно id нашей записи в первой таблицы 
while($arr=mysql_fetch_array($query2)) 

  echo "<img src='http://flagman/image/".$arr['photo']."'><BR>"; 



никак разрбраться не могу, почему выдает:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in z:\home\flagman\www\uslug2.php on line 85

в строке :

$array_query1 = mysql_fetch_array($query1); //Засовываем данные із первого запроса в массів 

  Ответить  
 
 автор: Trianon   (09.12.2008 в 15:47)   письмо автору
 
   для: shmel79   (09.12.2008 в 15:32)
 

А что у Вас в $query1 Вы посмотрели?

  Ответить  
 
 автор: shmel79   (09.12.2008 в 15:55)   письмо автору
 
   для: Trianon   (09.12.2008 в 15:47)
 

Всмысле?

  Ответить  
 
 автор: Trianon   (09.12.2008 в 16:15)   письмо автору
 
   для: shmel79   (09.12.2008 в 15:55)
 

в прямом!

  Ответить  
 
 автор: shmel79   (09.12.2008 в 16:19)   письмо автору
 
   для: Trianon   (09.12.2008 в 16:15)
 

все увидел)))

  Ответить  
 
 автор: shmel79   (09.12.2008 в 16:32)   письмо автору
 
   для: shmel79   (09.12.2008 в 16:19)
 

<? 
$query1 
mysql_query("SELECT * FROM `uslug` WHERE `id`='1'",$db); 
while(
$array_query1 mysql_fetch_array($query1))
{
printf"<tr><td  bgcolor=#0099CC class=title_uslug >%s</td>                                        
                            </tr>    "
,$array_query1['title']);
}
 

$query2 mysql_query("SELECT * FROM `photo` WHERE `usl_id`='".$array_query1['id']."'",$db); 
while(
$arr=mysql_fetch_array($query2)) 

                              
printf"                                
                            <tr>
                                        <td align=center><br><img src=http://fla/image/%s><br><br></td>
                                        </tr>"
,$arr['photo']); 


?> 


Блин. теперь выводит почему-то только заголовок.. а фотографии не выводит!...

  Ответить  
 
 автор: Trianon   (09.12.2008 в 16:43)   письмо автору
 
   для: shmel79   (09.12.2008 в 16:32)
 

смотрите исх. html получившейся страницы.

  Ответить  
 
 автор: shmel79   (09.12.2008 в 16:56)   письмо автору
 
   для: Trianon   (09.12.2008 в 16:43)
 

Первая часть заполняется где Заголовок...
а где фотки должны быть тэги отсутсвуют!

  Ответить  
 
 автор: Лена   (09.12.2008 в 11:12)   письмо автору
 
   для: shmel79   (08.12.2008 в 21:26)
 

Можно сделать одним запросом. table1 - там где у Вас заголовок, table2 - там, где картинки

<?php
$sql
="SELECT *, t.id AS tid  FROM table1 AS t 
LEFT JOIN table2 AS i 
ON i.usl_id = t.id 
ORDER BY tid"
;

$res mysql_query($sql); 
if(!
$res) exit("Error in $sql: "mysql_error());

for(
$i 0$row mysql_fetch_assoc($res); ) { 
//заголовок выбираем один раз, при каждом проходе цикла
    
if($i != $row['tid']) {
  
$i $row['tid']; 
  
$title $row['title'];
  
$img "<img src='path/".$row['photo']."'><br>";
  print 
$title $img;
    } 
}
?>
    

  Ответить  
 
 автор: shmel79   (09.12.2008 в 17:12)   письмо автору
 
   для: Лена   (09.12.2008 в 11:12)
 

Использую ваш пример, просто он мне менее понятен, чем первый предложенный.
Но зато заработал! Только он выводит 1 фотографию. Как сделать так чтобы выводил все фотографии присвоенные usl_id ?

  Ответить  
 
 автор: Лена   (09.12.2008 в 17:42)   письмо автору
 
   для: shmel79   (09.12.2008 в 17:12)
 

Вот эти строки вытяните из цикла:
$img = "<img src='path/".$row['photo']."'><br>";
print $title . $img;

Поставьте их между двумя последними }

  Ответить  
 
 автор: shmel79   (09.12.2008 в 17:53)   письмо автору
 
   для: Лена   (09.12.2008 в 17:42)
 

Теперь выводит заголовок к какждой отображенной фотографии.... (

  Ответить  
 
 автор: shmel79   (09.12.2008 в 17:54)   письмо автору
 
   для: shmel79   (09.12.2008 в 17:53)
 

все вроде бы разобрался..
буду дальше пробывать..

  Ответить  
 
 автор: shmel79   (10.12.2008 в 12:16)   письмо автору
 
   для: Лена   (09.12.2008 в 11:12)
 

Все работает... и выводиться как надо..
Только одно НО: запрос выводит все фотографии из таблицы по умолчанию их может быть больше 3, которые можно будет увидеть перейдя в раздел подробнее. А на главной странице должно выводиться не больше трех, можно как-то ограничить вывод до 3 фотографиий?!
Подставлял в запрос функцию DESC LIMIT - он ограничил вывод всех фотографиий в общем.

  Ответить  
 
 автор: shmel79   (10.12.2008 в 15:13)   письмо автору
 
   для: shmel79   (10.12.2008 в 12:16)
 

Никто не поможет?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования