Ссылки на страницу с использованием поля бд

  • Автор темы DimaGavrilov
  • Дата начала

DimaGavrilov

Guest
Ссылки на страницу с использованием поля бд

Пробую создать ссылку. В базе поле id совпадает с <id>.php страницей. Как заставить работать?
$i = 0;
WHILE ($i < $number)
{
$blgdate = mysql_result($result,$i,"blgdate");
$blg = mysql_result($result,$i,"blg");
if ($blg<>"")
{
PRINT "
<tr valign=top>
<td>
<span style=color: #939393;>$blgdate</span>
<p>$blg<br>
<a href=blogg/$id.php class=menu>Далее</a></p>
<div class=line></div><br>
</td>
</tr>";
$i++;
}}
 

bkonst

.. хочется странного?...
Ну, наверное, таки для начала где-нибудь присвоить значение переменной $id.
 

DimaGavrilov

Guest
А можно как-то оптимизировать данное решение?
 

zarus

Хитрожопый макак
Автор оригинала: DimaGavrilov
А можно как-то оптимизировать данное решение?
1. Условие if ($blg<>"") вынести в запрос к SQL
... WHERE ... (`blg`<>'') ...
2. Конструкцию
PHP:
$i = 0;
WHILE ($i < $number) {
... 
$i++
}
заменить на
PHP:
for ($i=0; $i < $number; $i++) {
...
}
3. Вообще изменить запрос на такой вид и и вывести все в один заход:
PHP:
$query = "SELECT 'tr valign=top>
<td>
<span style=color: #939393;>'+`blgdate`+'</span>
<p>'+`blg`+'<br>
<a href=blogg/'+`id`+'.php class=menu>Далее</a></p>
<div class=line></div><br>
</td>
</tr>' as `link` FROM `....` WHERE (`blg`<>'')";
$res = mysql_query($query);
while (false !== ($row = mysql_fetch_row($res))) {
  print($row[0]);
}
 

DimaGavrilov

Guest
Дааа. Учиться, учиться и ещё раз учиться военному делу. (Ленин)
Пробую!

-~{}~ 20.01.06 14:51:

Сюда же: вопрос такой
Как сортировать строки базы по ключу id перед выводом на страницу?
Запрос после выполнения выдаёт строки в порядке их добавления!
 

zarus

Хитрожопый макак
ORDER BY `id`
Советую почитать книгу по SQL-запросам...
 

DimaGavrilov

Guest
С удовольствием. Начал читать, но тогда было для общего развития - перестал. А вот сейчас надо, а нет её уже. Если есть стоящие книги в нете - не посоветуешь?
 
Сверху