|
|
|
| допустим
$n=17;
echo '<a href="*/answer.php?id='.$n.'">Просмотр</a>
|
при переходе по ссылке:
$query = "SELECT dr." . intval($_GET['n']) . " as text FROM anketa ORDER BY id LIMIT $start, $p"; // поле dr17
|
как правильно составить запрос? | |
|
|
|
|
|
|
|
для: Medulla
(13.09.2007 в 10:58)
| | Так, а сейчас что-то работает неправильно? | |
|
|
|
|
|
|
|
для: Medulla
(13.09.2007 в 10:58)
| | Данные в таблицах по строкам не хранят. Только по столбцам.
Соответственно, такие конструкции "SELECT dr$n FROM anketa ..." - явный признак того, что схема БД далека от нормальной.
Это, конечно, в усливии того, что запрос составлен правильно. | |
|
|
|
|
|
|
|
для: Trianon
(13.09.2007 в 11:22)
| | >>>явный признак того, что схема БД далека от нормальной.
да. к сожалению так.
бд выглядит след образом:
id_dr1 _dr2_ dr..n
ошибка: unknown table dr in field list | |
|
|
|
|
|
|
|
для: Medulla
(13.09.2007 в 10:58)
| | переменная у вас называется id, а получить пытаетесь - n | |
|
|
|
|
|
|
|
для: Medulla
(13.09.2007 в 10:58)
| |
$query = "SELECT dr" . intval($_GET['id']) . " as text FROM anketa ORDER BY id LIMIT $start, $p"; // поле dr17
|
не только переменная id, еще точка лишняя после dr (если имя поля dr17) | |
|
|
|
|
|
|
|
для: Gust
(13.09.2007 в 14:43)
| | спасибо.
$pagenumber = 20;
if(isset($_GET['page'])) $page = $_GET['page'];
else $page = 1;
$start = (($page-1)*$pagenumber );
$query = "SELECT dr" . intval($_GET['id']) . " as text FROM anketa ORDER BY id LIMIT $start, $pagenumber "; // where
$prd = mysql_query($query);
if(!$prd) exit(mysql_error());
if(mysql_num_rows($prd) > 0)
{
while($row = mysql_fetch_array($prd))
{
echo "<tr width= 430px> <td> ".stripslashes($row['text'])."</td></tr>";
echo '<tr height="5px"> <td> </td></tr>';
}
echo '<tr height="550px"> <td> </td></tr>';
echo "</table>";
}
$query = "SELECT COUNT(*) FROM anketa";// where
$tot = mysql_query($query);
if(!$tot) exit(mysql_error());
$total = mysql_result($tot,0);
$number = (int)($total/$pagenumber);
if((float)($total/$pagenumber) - $number != 0) $number++;
for($i = 1; $i <= $number; $i++)
{
if($i != $number)
{
if($page == $i)
{
echo "[".(($i - 1)*$pagenumber + 1)."-".$i*$pagenumber."] ";
}
else
{
echo "<a href=$_SERVER[PHP_SELF]?page=".$i.">[".
(($i - 1)*$pagenumber + 1)."-".
$i*$pagenumber."]</a> ";
}
}
else
{
if($page == $i)
{
echo "[".(($i - 1)*$pagenumber + 1)."-".($total)."] ";
}
else
{
echo "<a href=$_SERVER[PHP_SELF]?page=".$i.">[".
(($i - 1)*$pagenumber + 1)."-".
($total)."]</a> ";
}
}
}
|
необходимо выводить все значения, кроме 0.
пыталась ограничить через (where dr" . intval($_GET['id']) . " <> 0).
как правильно составить запросы? | |
|
|
|
|
|
|
|
для: Medulla
(14.09.2007 в 08:03)
| | как всегда невнимательность
тип поля
where dr" . intval($_GET['id']) . " not like 0 | |
|
|
|