2015-04-21 2 views
0

у меня есть 2 таблицы MySQL следующим образом:Правильный способ для извлечения данных MySQL

  1. tblEvents - который имеет поле идентификатора, album_id, и т.д.
  2. tblImages - который имеет поле идентификатора, изображения и album_id

Я выборки данных из tblEvents следующим образом:

<?php 
$sqlBlog = "SELECT * FROM tblEvents"; 
$myBlog = mysql_query($sqlBlog, $con); 
while($blog = mysl_fetch_array($myBlog)){ 
$port = '<div>Album Id:'.$blog['album_id'].'</div>' 
echo $port; 
} 

Теперь я хочу, чтобы извлечь все изображения из tblImages, который имеет соответствующий album_id. Обратите внимание, что album_id одинаково в обеих таблицах. Я хочу, чтобы эхо изображения в <li></li> в вышеуказанном div. Каков наилучший способ сделать это?

Спасибо и с уважением.

+0

Вы можете использовать mysql Присоединиться: http://www.phpknowhow.com/mysql/joins/ –

ответ

0

Для этого вы можете использовать JOIN. Посмотрите на https://dev.mysql.com/doc/refman/4.1/en/join.html

Пример запроса может выглядеть следующим образом:

SELECT * 
FROM tblEvents events 
JOIN tblImages images 
ON images.album_id = events.album_id 

Обратите внимание, что events и images теперь псевдонимы для таблиц tblEvents и tblImages
Теперь вы можете даже выбрать как идентификаторы в то же запроса, предваряя сказал псевдонимами вроде так:

SELECT images.album_id, events.album_id 
FROM tblEvents events 
JOIN tblImages images 
ON images.album_id = events.album_id 
0
SELECT 
    * 
FROM 
    tblEvents AS e 
    INNER JOIN tblImages AS i 
    ON i.album_id = e.album_id 

Используйте этот запрос и попробуйте также выполнить mysqli или PDO

+0

Прошу прощения, но я не могу заставить его работать. См. [This] (http://pastebin.com/6Udh5mpz). Этот код не работает. Когда я помещаю второй цикл while за пределы 1-го, он работает, но он получает последнее значение «изображения», на которое заканчивается 1-й цикл. Но мне нужно работать в пределах 1-го цикла. Прошу прощения, если это глупый вопрос, но я совершенно не знаком с разработкой PHP. –

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