[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не работает
Nikage
Информация в базе не обновляется, пишет заполните все поля, хотя они заполнены
<?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иньекций не боитесь?
В-третьих....

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'];
}

Спустя 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))
не срабатывает. не мути воду )

Спустя 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 год на дворе, а мы Попова смотрим biggrin.gif

Спустя 1 минута, 17 секунд (26.04.2011 - 05:34) inpost написал(а):
Nikage
Ай-да в мою подпись, там всё хорошее есть smile.gif

Спустя 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
Цитата
var_dump лишнюю инфу выводит

я бы так не сказал, хотя в данном конкретном случае разницы нет.
nugle
Цитата
ребят, а вы вообще не замечаете этот момент $_POST['id'] = $id;?

это не принципиально важно, т.к. не проходит первое условие в коде из первого поста, хотя, конечно, неправильно.

речь шла про ДАННЫЙ КОНКРЕТНЫЙ случай. а так я сам ее пользую
насчет ид-действительно не принципиально, т.к. в условии проверка начинается с тайтл и ид там нет.

Спустя 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));
}




?>

Спустя 19 минут, 52 секунды (26.04.2011 - 15:24) Krevedko написал(а):
на попова похоже. а я только недавно поел (((

Спустя 4 минуты, 6 секунд (26.04.2011 - 15:28) Invis1ble написал(а):
Nikage
Во-первых, ты показал только кусочек формы,
во-вторых - тебе написали, вставь в обработчик print_r($_POST) и увидишь, почему не срабатывает условие

Спустя 1 минута, 37 секунд (26.04.2011 - 15:30) Krevedko написал(а):
угу...учитывая, что самое интересное храниться подкатом тут
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] => )

<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.

Спустя 3 минуты, 14 секунд (26.04.2011 - 18:01) Krevedko написал(а):
дык если радиокнопка, то выбрать можно одну. в чем тогда логика ? может там чекбоксы все-таки должны быть ?

Спустя 5 минут, 20 секунд (26.04.2011 - 18:06) Invis1ble написал(а):
Nikage
Из всех проверяемых в обработчике значений у тебя будет инициализировано только 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" - чему ровна то ??
Как то так...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.