Почему не обновляется база данных?

Рейтинг: 1Ответов: 8Опубликовано: 04.02.2011

Пишу сайт на phр (в данный момент админ-блок). Имеется файл edit_text.php, который выводит список страниц для редактирования без индентификатора id, а если он есть, то форму с содержанием соответствующей страницы:

if (isset($id)) 
{
    $result = mysql_query("SELECT * FROM settings WHERE id='$id'", $db);
    $myrow = mysql_fetch_array($result);
    print <<<HERE

    <form name="form1" method="post" action="update_text.php">
        <p>
            <label>Введите название страницы (тэг title)<br>
                <input value="$myrow[title]" type="text" name="title" id="title">
            </label>
        </p>
        <p>
            <label>Введите краткое описание страницы<br>
                <input value="$myrow[meta_d]" type="text" name="meta_d" id="meta_d">
            </label>
        </p>
        <p>
            <label>Введите ключевые слова для страницы<br>
                <input value="$myrow[meta_k]" type="text" name="meta_k" id="meta_k">
            </label>
        </p>

        <p>
            <label>
                <p>Введите полный текст страницы с тэгами</p>
            <p>
                <textarea name="text" id="text" cols="50" rows="20">$myrow[text]</textarea>
            </label>
            </p>
        </p>

        <input name="id" type="hidden" value="$myrow[id]">

        <p>
            <label>
                <input type="submit" name="submit" id="submit" value="Сохранить изменения">
            </label>
        </p>
    </form>

HERE;

}
else
{
    $result = mysql_query("SELECT id, title FROM settings", $db);
    $myrow = mysql_fetch_array($result);
    do {
        printf("<p><a href='edit_text.php?id=%s'>%s</a></p>", $myrow['id'], $myrow['title']);
    } while ($myrow = mysql_fetch_array($result));
}

потом данные отправляются в файл update_text.php.

if (isset($id) && isset($title) && isset($meta_d) && isset($meta_k) && isset($text))            
{
    $result = mysql_query("UPDATE settings SET title='$title', meta_d='$meta_d', meta_k='$meta_k', text='$text' WHERE id='$id')", $db);
    if ($result == true) 
    {
        echo"<p>Текст страницы успешно отредактирован.</p>";
    }
    else 
    {
        echo"<p>Текст страницы не отредактирован.</p>";
    }

}
else
{
    echo"<p>Вы ввели не все данные, поэтому страница не была отредактирована. Вернитесь назад и заполните все поля.</p>";
}

?>

Какие данные ни введи, выполняется строка:

echo"<p>Текст страницы успешно отредактирован.</p>".

Что делать? Почему не обновляется база данных?

Ответы

Ответов пока нет.