<?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'");
}
else
{
echo "Заполните все поля </br>";
}
if ($result == 'true')
{
echo "Урок успешно обновлен";
}
else
{
echo "Ошибка обновления";
}
?>
Спустя 3 минуты, 26 секунд (26.04.2011 - 00:35) waldicom написал(а):
Версия php не менялась? Используете глобальные переменные?
Спустя 2 минуты, 26 секунд (26.04.2011 - 00:38) Mirexzpalich написал(а):
хм.... Во-первых может $_POST['title'],$_POST['meda_d'] и т.д.
Во-вторых.... А вы SQLиньекций не боитесь?
В-третьих....
Засуньте после запроса к БД....
Во-вторых.... А вы SQLиньекций не боитесь?
В-третьих....
if ($result == 'true')
{
echo "Урок успешно обновлен";
}
else
{
echo "Ошибка обновления";
}
Засуньте после запроса к БД....
Спустя 3 минуты, 44 секунды (26.04.2011 - 00:42) Nikage написал(а):
Ничего не менялось. Переменные еще какие глобальные)
на всякий случай прописал
if (isset ($_POST['id']))
{
$_POST['id'] = $id;
}
if
(isset ($_POST['title']))
{
$title = $_POST['title'];
}
if
(isset ($_POST ['meta_d']))
{
$meta_d = $_POST['meta_d'];
}
if
(isset ($_POST['meta_k']))
{
$meta_k = $_POST['meta_k'];
}
if
(isset ($_POST['date']))
{
$date = $_POST['date'];
}
if
(isset ($_POST['description']))
{
$description = $_POST['description'];
}
if
(isset ($_POST['text']))
{
$text = $_POST['text'];
}
if
(isset ($_POST['author']))
{
$author = $_POST['author'];
}
на всякий случай прописал
if (isset ($_POST['id']))
{
$_POST['id'] = $id;
}
if
(isset ($_POST['title']))
{
$title = $_POST['title'];
}
if
(isset ($_POST ['meta_d']))
{
$meta_d = $_POST['meta_d'];
}
if
(isset ($_POST['meta_k']))
{
$meta_k = $_POST['meta_k'];
}
if
(isset ($_POST['date']))
{
$date = $_POST['date'];
}
if
(isset ($_POST['description']))
{
$description = $_POST['description'];
}
if
(isset ($_POST['text']))
{
$text = $_POST['text'];
}
if
(isset ($_POST['author']))
{
$author = $_POST['author'];
}
Спустя 11 минут, 48 секунд (26.04.2011 - 00:53) Mirexzpalich написал(а):
Мне страшно......
Спустя 17 секунд (26.04.2011 - 00:54) Guest написал(а):
Это по Попову по всей видимости (= Попробуй сделать:
Или как там у него называется.
$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'", $db);
Или как там у него называется.
Спустя 1 минута, 13 секунд (26.04.2011 - 00:55) Krevedko написал(а):
напишите print_r($_POST)
может чего с формой не то..какое поле не доходит
может чего с формой не то..какое поле не доходит
Спустя 44 секунды (26.04.2011 - 00:56) mxwuser написал(а):
Сверху я написал. Там как переменная подключения называется $bd или $db, ее и напиши через запятуую там.
Спустя 7 минут, 59 секунд (26.04.2011 - 01:04) Krevedko написал(а):
при чем тут запрос, если у него условие
if (isset ($title) && isset ($meta_d) && isset ($meta_k) && isset ($date) && isset ($description) && isset ($text) && isset ($author))
не срабатывает. не мути воду )
if (isset ($title) && isset ($meta_d) && isset ($meta_k) && isset ($date) && isset ($description) && isset ($text) && isset ($author))
не срабатывает. не мути воду )
Спустя 11 минут, 42 секунды (26.04.2011 - 01:15) Invis1ble написал(а):
В данном случае совет Krevedko самый разумный, имхо. print_r($_POST) или var_dump($_POST) все покажет
Спустя 6 минут, 42 секунды (26.04.2011 - 01:22) Krevedko написал(а):
ну var_dump лишнюю инфу выводит...тут и так понятно, что массив )
да кстати...после Заполните поля видимо ниже еще полюбому пишет Ошибка обновления...Как посоветовали выше условие надо к запросу засунуть )
да кстати...после Заполните поля видимо ниже еще полюбому пишет Ошибка обновления...Как посоветовали выше условие надо к запросу засунуть )
Спустя 4 часа, 10 минут, 19 секунд (26.04.2011 - 05:32) nugle написал(а):
ребят, а вы вообще не замечаете этот момент $_POST['id'] = $id;?
там наоборот должно быть) и вам сюда надо быстрее http://phpforum.ru/index.php?showtopic=32799
2011 год на дворе, а мы Попова смотрим
там наоборот должно быть) и вам сюда надо быстрее http://phpforum.ru/index.php?showtopic=32799
2011 год на дворе, а мы Попова смотрим
Спустя 1 минута, 17 секунд (26.04.2011 - 05:34) inpost написал(а):
Nikage
Ай-да в мою подпись, там всё хорошее есть
Ай-да в мою подпись, там всё хорошее есть
Спустя 5 часов, 38 минут, 57 секунд (26.04.2011 - 11:13) Invis1ble написал(а):
Krevedko
Цитата |
var_dump лишнюю инфу выводит |
я бы так не сказал, хотя в данном конкретном случае разницы нет.
nugle
Цитата |
ребят, а вы вообще не замечаете этот момент $_POST['id'] = $id;? |
это не принципиально важно, т.к. не проходит первое условие в коде из первого поста, хотя, конечно, неправильно.
Спустя 3 минуты, 47 секунд (26.04.2011 - 11:16) Krevedko написал(а):
Цитата (Invis1ble @ 26.04.2011 - 08:13) | ||||
Krevedko
я бы так не сказал, хотя в данном конкретном случае разницы нет. nugle
это не принципиально важно, т.к. не проходит первое условие в коде из первого поста, хотя, конечно, неправильно. |
речь шла про ДАННЫЙ КОНКРЕТНЫЙ случай. а так я сам ее пользую
насчет ид-действительно не принципиально, т.к. в условии проверка начинается с тайтл и ид там нет.
Спустя 3 часа, 47 минут, 32 секунды (26.04.2011 - 15:04) Nikage написал(а):
Вот файл из которого должны присваиваться значения переменным
<form name ="form2" action="drop_lesson.php" method="POST">
<?php
{
$result = mysql_query ("SELECT id, title FROM lessons");
$myrow = mysql_fetch_array ($result);
do
{
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array($result));
}
?>
<form name ="form2" action="drop_lesson.php" method="POST">
<?php
{
$result = mysql_query ("SELECT id, title FROM lessons");
$myrow = mysql_fetch_array ($result);
do
{
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array($result));
}
?>
Спустя 19 минут, 52 секунды (26.04.2011 - 15:24) Krevedko написал(а):
на попова похоже. а я только недавно поел (((
Спустя 4 минуты, 6 секунд (26.04.2011 - 15:28) Invis1ble написал(а):
Nikage
Во-первых, ты показал только кусочек формы,
во-вторых - тебе написали, вставь в обработчик print_r($_POST) и увидишь, почему не срабатывает условие
Во-первых, ты показал только кусочек формы,
во-вторых - тебе написали, вставь в обработчик print_r($_POST) и увидишь, почему не срабатывает условие
Спустя 1 минута, 37 секунд (26.04.2011 - 15:30) Krevedko написал(а):
угу...учитывая, что самое интересное храниться подкатом тут
тогда уж лучше из браузера хтмл код скопировать сюда
кстати косяк...name = 'id' имена должны быть разные...
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
тогда уж лучше из браузера хтмл код скопировать сюда
кстати косяк...name = 'id' имена должны быть разные...
Спустя 2 часа, 20 минут, 53 секунды (26.04.2011 - 17:50) Nikage написал(а):
Ребята, новичок, так что не судите строго...
НЕ присваетвается значение id:
удаление невозможно
Array ( [id] => )
Вот форма полностью.
Касательно вот этого:
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
не вижу ничего такого.
И если не затруднит, изъяснйтесь по-точнее, форум для чайников, если кто-то чему-то еще не научился, то это не повод стебаться, уважаемые знатоки.
"name = 'id' имена должны быть разные..." - какие имена? Уж простите за невежество
НЕ присваетвается значение id:
удаление невозможно
Array ( [id] => )
<form name ="form2" action="drop_lesson.php" method="POST">
<?php
{
$result = mysql_query ("SELECT id, title FROM lessons");
$myrow = mysql_fetch_array ($result);
do
{
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
}
while ($myrow = mysql_fetch_array($result));
}
?>
<input name="id" type = "submit" value = "Удалить урок"/>
</form>
Вот форма полностью.
Касательно вот этого:
printf ("<p><input name = 'id' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
не вижу ничего такого.
И если не затруднит, изъяснйтесь по-точнее, форум для чайников, если кто-то чему-то еще не научился, то это не повод стебаться, уважаемые знатоки.
"name = 'id' имена должны быть разные..." - какие имена? Уж простите за невежество
Спустя 7 минут, 29 секунд (26.04.2011 - 17:58) inpost написал(а):
Krevedko
Почему разные? Это ведь радио-кнопка, должна остаться только одна.
Nikage
я же говорил, перечитай всё, что написано у меня в подписи. Там найдешь многие ответы.
Твоя основная проблема, кнопка отправляет: <input name="id" type = "submit" value = "Удалить урок"/>, имя должно быть другое, в противном случае он затирает имя radio.
Почему разные? Это ведь радио-кнопка, должна остаться только одна.
Nikage
я же говорил, перечитай всё, что написано у меня в подписи. Там найдешь многие ответы.
Твоя основная проблема, кнопка отправляет: <input name="id" type = "submit" value = "Удалить урок"/>, имя должно быть другое, в противном случае он затирает имя radio.
Спустя 3 минуты, 14 секунд (26.04.2011 - 18:01) Krevedko написал(а):
дык если радиокнопка, то выбрать можно одну. в чем тогда логика ? может там чекбоксы все-таки должны быть ?
Спустя 5 минут, 20 секунд (26.04.2011 - 18:06) Invis1ble написал(а):
Nikage
Из всех проверяемых в обработчике значений у тебя будет инициализировано только id
Из всех проверяемых в обработчике значений у тебя будет инициализировано только id
Спустя 56 секунд (26.04.2011 - 18:07) walerus написал(а):
Цитата (inpost @ 26.04.2011 - 14:58) |
Krevedko Почему разные? Это ведь радио-кнопка, должна остаться только одна. Nikage я же говорил, перечитай всё, что написано у меня в подписи. Там найдешь многие ответы. Твоя основная проблема, кнопка отправляет: <input name="id" type = "submit" value = "Удалить урок"/>, имя должно быть другое, в противном случае он затирает имя radio. |
Немного не так, оно не затрет имя radio, т.к. radio в данном случае тип чекбокса если можно так назвать, а name у него всегда равен ID, вот и будет тереть имя ID
У него по моему должно быть так...
printf ("<p><input name = 'id_select' type = 'radio' value ='%s'><label>%s</label></p>", $myrow["id"], $myrow["title"]);
ГДЕ - id_select - то ID которое нужно будет удалить
и еще забыл спросить - переменная "%s" - чему ровна то ??
Как то так...