thoth777
Гуру форума
- Регистрация
- 28 Ноя 2008
- Сообщения
- 302
- Реакции
- 98
про скрипт я в курсе.
Она вобще не заработала. Делал так
Выводит в каждой категории не свой текст, а тот у которого id раньше.PHP:$sql = "SELECT * FROM sub_pages WHERE cat in('$p','$cat')or id='$p'"; $res = mysql_query($sql); while ($out=mysql_fetch_assoc($res)){ if ($out['id']==$p){ $sub_row = mysql_query($sql) or die(mysql_error() ."<br/>". $sql); $row = mysql_fetch_array($sub_row); $sub_text = $row["text_rus"]; } if ($out['cat']==$cat){$result_category = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);} if ($out['cat']==$p){$result_cat = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);} }
То есть если у страницы есть две подкатегории то в обоих выведет один и тот же текст.
А надо чтобы разный.
Так работает.PHP:$sql = "SELECT * FROM sub_pages WHERE id = '$p'"; $sub_row = mysql_query($sql) or die(mysql_error() ."<br/>". $sql); $row = mysql_fetch_array($sub_row); $sub_text = $row["text_rus"];
ошибочка у вас
while ($out=mysql_fetch_assoc($res)){
if ($out['id']==$p){
$sub_row = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
$row = mysql_fetch_array($sub_row);
зачем вложенные запросы к базе?
у вас и так все есть что вам нужно
$sql = "SELECT * FROM sub_pages WHERE cat in('$p','$cat')or id='$p'";
$res = mysql_query($sql);
while ($out=mysql_fetch_assoc($res)){
if ($out['id']==$p){$row = $out;}
if ($out['cat']==$cat){$result_category = $out;}
if ($out['cat']==$p){$result_cat = $out}
}
на выходе имеем ассоциативные масссивы $row, $result_category,$result_cat
с которыми дальше делайте что хотите.