Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте. Нужна помощь. На данный момент создаю сайт, на котором можно будет читать книги. Главы книг, например "Две Дианы - Дюма", будут выбираться из базы данных. Почему-то когда вношу главы в базу, они сохраняются не по порядку. То есть, id идет так 1 2 3 4 5 6 7 10 8 9. Почему 10 глава встала после 7, а не после 9. Это первое. А второе - насколько я поняла в самой базе это исправить нельзя. Нужно при выборке указать сортировку. Я так и сделала, но у меня ничего не получилось. Может, посмотрите код и укажите ошибку, которую я как не стараюсь, не могу увидеть.
<?php
include ("..."); /*Соединяемся с базой*/
if (isset($_GET['id'])) {$id = $_GET['id'];}
if (!isset($id)) {$id = 1;}
$result = mysql_query ("SELECT * FROM duma WHERE id='$id' ORDER BY id ASC",$db);
if (!$result)
{
echo "<p>Запрос на выборку данных из базы не прошел. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}
if (mysql_num_rows($result) > 0)
{
$myrow = mysql_fetch_array($result);
$new_view = $myrow["view"] + 1;
$update = mysql_query ("UPDATE duma SET view='$new_view' WHERE id='$id'",$db);
}
else
{
echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
exit();
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
Пожалуйста помогите.
Отредактированно Elena_S (16.06.2010 19:22:00)
Неактивен
1. Подумайте, что будет, если я вызову код вот так: your.php?id=';DROP TABLE duma;
2. Запрос у Вас странный. Аналогия такая — у Вас есть миска. В ней три яблока —
красное, зеленое и желтое. Запрос у Вас такой: «достань из миски зеленое яблоко,
а потом всё, что достал, отсортируй по цвету». Не понятно, зачем сортировать одну
строку
3. UPDATE duma SET viewed = viewed + 1 WHERE id = $id;
Неактивен