|
|
|
| Подскажите пожалуйста.
Имеется запрос к базе специальностей...
if (!empty($specz))
{
$sqlSpCount = @mysql_query("SELECT * FROM b_resum_users_spec WHERE SPEC='$specz'");
if (mysql_num_rows($sqlSpCount)>0)
{
$arrSpCount = mysql_fetch_array($sqlSpCount);
do {
$id_usp = $arrSpCount['ID_U'];
}
while ($arrSpCount = mysql_fetch_array($sqlSpCount));
$sqlForm = @mysql_query("SELECT * FROM b_resum_users_inf LEFT JOIN b_resum_users_fw ON
b_resum_users_inf.ID_U=b_resum_users_fw.ID_U
WHERE b_resum_users_inf.HIDE='SHOW' AND b_resum_users_inf.ID_U='$id_usp' LIMIT $start, $num");
}
}
|
$id_usp = $arrSpCount['ID_U'];
| Принемает несколько значений..допустим 1 и 2
Теперь как мне из таблиц вытащить и по 1 и по 2?
$sqlForm = @mysql_query("SELECT * FROM b_resum_users_inf LEFT JOIN b_resum_users_fw ON
b_resum_users_inf.ID_U=b_resum_users_fw.ID_U
WHERE b_resum_users_inf.HIDE='SHOW' AND b_resum_users_inf.ID_U='$id_usp' LIMIT $start, $num");
|
| |
|
|
|
|
|
|
|
для: sanchescom
(07.09.2009 в 12:26)
| | > $id_usp = $arrSpCount['ID_U'];
это присвоение срабатывает в цикле DO{ }WHILE; столько раз
, сколько рядов вернёт первый запрос
На момент отправки второго запроса $id_usp это цифра из последнего ряда.
формируйте вместо этого строку , чтобы в следующем запросе было условие
AND b_resum_users_inf.ID_U IN (1,2,3,4,5)
// и в остальном не смог ничего понять
, можно применять алиасы имён полей/таблиц
, чтобы компактнее выглядели такие длинные имена | |
|
|
|
|
|
|
|
для: heed
(07.09.2009 в 12:52)
| | Спасибо большое все получилось...(вроде=) )
Сделал так
$sqlForm = @mysql_query("SELECT * FROM b_resum_users_inf LEFT JOIN b_resum_users_fw ON
b_resum_users_inf.ID_U=b_resum_users_fw.ID_U
WHERE b_resum_users_inf.HIDE='SHOW' AND b_resum_users_inf.ID_U IN (SELECT ID_U FROM b_resum_users_spec WHERE SPEC='$specz') LIMIT $start, $num");
|
Вроде работает! | |
|
|
|