Помогит найти ошибку, это из админке, не хояет оьновлять информацию, пишет:Вы ввели не всю информацию, поэтому урок в базе не может быть обновлен.
PHP |
<?php include ("lock.php"); include ("blocks/bd.php"); if (isset($_POST['title'])) { $title = $_POST['title'];
if ($title == '') { unset($title); }
}
/* Если существует в глобальном массиве $_POST['title'] опр. ячейка, то мы создаем простую переменную из неё. Если переменная пустая, то уничтожаем переменную. */ if (isset($_POST['meta_d'])) {$meta_d = $_POST['meta_d']; if ($meta_d == '') {unset($meta_d);}} if (isset($_POST['meta_k'])) {$meta_k = $_POST['meta_k']; if ($meta_k == '') {unset($meta_k);}} if (isset($_POST['date'])) {$date = $_POST['date']; if ($date == '') {unset($date);}} if (isset($_POST['description'])) {$description = $_POST['description']; if ($description == '') {unset($description);}} if (isset($_POST['text'])) {$text = $_POST['text']; if ($text == '') {unset($text);}} if (isset($_POST['author'])) {$author = $_POST['author']; if ($author == '') {unset($author);}} if (isset($_POST['id'])) {$id = $_POST['id'];} ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Обработчик</title> <link href="style.css" rel="stylesheet" type="text/css"> </head> <body> <table width="690" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" class="main_border"> <!--Подключаем шапку сайта--> <? include("blocks/header.php"); ?> <tr> <td><table width="690" border="0" cellspacing="0" cellpadding="0"> <tr> <!--Подключаем левый блок сайта--> <? include ("blocks/lefttd.php"); ?> <td valign="top"> <?php if (isset($title) && isset($meta_d) && isset($meta_k) && isset($date) && isset($description) && isset($text) && isset($author)) { /* Здесь пишем что можно заносить информацию в базу */ $result = mysql_query ("UPDATE lessons SET title='$title', meta_d='$meta_d', meta_k='$meta_k', date='$date', description='$description', text='$text', author='$author' WHERE id='$id'");
if ($result == 'true') {echo "<p>Ваш урок успешно обновлен!</p>";} else {echo "<p>Ваш урок не обновлен!</p>";}
} else
{ echo "<p>Вы ввели не всю информацию, поэтому урок в базе не может быть обновлен.</p>"; } ?> </td> </tr> </table></td> </tr> <!--Подключаем нижний графический элемент--> <? include ("blocks/footer.php"); ?> </tab |
Оформляйте код согласно правилам форума Спустя 11 минут, 21 секунда (7.05.2009 - 14:26) olgatcpip написал(а):
Спустя 9 минут, 32 секунды (7.05.2009 - 14:36) Guest написал(а):
Цитата |
Распечайтай $_POST |
всмысле распечатать, подробнее пожалуйста...
Спустя 43 минуты, 14 секунд (7.05.2009 - 15:19) Kuliev написал(а):
Цитата (Guest @ 7.05.2009 - 16:36) |
Цитата | Распечайтай $_POST |
всмысле распечатать, подробнее пожалуйста...
|
PHP |
echo "<pre>"; print_r($_POST); |
Спустя 38 минут, 54 секунды (7.05.2009 - 15:58) Guest написал(а):
Сделал как сказали, выдал следующее
PHP |
Array ( [title] => Практика [meta_d] => Практикуемся [meta_k] => Практика, работа [date] => 2009-00-00 [discription] => Вы будите идти в ногу со временем [text] => Когда PHP разбирает файл, он просто передаёт текст файла, пока не обнаружит один из специальных тэгов, который говорит о необходимости начать интерпретацию текста как кода PHP. Разборщик выполняет весь найденный [author] => сергей [id] => 2 [submit] => Сохранить изменения ) |
Спустя 36 минут, 34 секунды (7.05.2009 - 16:34) Kuliev написал(а):
GuestПопробуй сделать под себя, должно работать.
PHP |
<?php // если была нажата кнопка то обрабатываем форму if (isset($_POST['submit'])) {
// Утюжим переменные if (isset($_POST['go'])) { // Функция для проверки на пустоту заполнения полей function empty_form($_POST) { foreach ($_POST as $val) { if (empty($val)) { $false[] = ++$i; } } if (count($false) > 0) { return false; } else { return true; } } $form = empty_form($_POST);
// Обробатываем дальше if ($form === true) { // Обновляем инфу в БД $result = mysql_query ("UPDATE lessons SET title='".$_POST['title']."', meta_d='".$_POST['meta_d']."', meta_k='".$_POST['meta_k']."', date='".$_POST['date']."', description='".$_POST['description']."', text='".$_POST['text']."', author='".$_POST['author']."' WHERE id='".intval($_POST['id'])."'"); echo "Данные отредактированны."; exit(); } // Выводим ошибку else { echo "ERROR"; exit(); } } |
Спустя 3 часа, 4 минуты, 14 секунд (7.05.2009 - 19:39) Viking написал(а):
description в посте через "i"