За последние 24 часа нас посетили 38136 программистов и 1811 роботов. Сейчас ищут 984 программиста ...

Не обновляется запись в базе из textarea

Тема в разделе "PHP и базы данных", создана пользователем aziz, 7 окт 2010.

  1. aziz

    aziz Активный пользователь

    С нами с:
    1 фев 2006
    Сообщения:
    194
    Симпатии:
    0
    Адрес:
    Ташкент
    Добрый день. Проблема. Есть база в ней поле id и message. В message присуствует некий текст. Пытаюсь сделать update :
    PHP:
    1. $sql =mysql_query ("UPDATE `klass` SET `message`=".$message."   WHERE `id_klass`=32;");
    Но ничего обсалютно не происходит. Даже ощибку не даёт. Если задаю
    PHP:
    1.  
    2. $sql =mysql_query ("UPDATE `klass` SET `message`='new text'     WHERE `id_klass`=32;");
    3.  
    всё записывается. пробовал сатавить
    Код (Text):
    1. $_POST['message'];
    результат тот же. Поле в базе текстовое.

    Вот сама форма
    HTML:
    1. <form action="tets.php" method="post">
    2. <textarea name="message" cols="45" rows="5"></textarea>
    3. <input name="submit" type="submit">
    4. </form>
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    $sql =mysql_query ("UPDATE `klass` SET `message`= '" . $_POST['message'] . "' WHERE `id_klass`=32;");
     
  3. aziz

    aziz Активный пользователь

    С нами с:
    1 фев 2006
    Сообщения:
    194
    Симпатии:
    0
    Адрес:
    Ташкент
    Примного благодарен. Спасибо.
     
  4. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    tommyangelo
    Не совсем так, для безопасности лучше так
    Код (Text):
    1. $sql =mysql_query ("UPDATE `klass` SET `message`= '" . mysql_real_escape_string ($_POST['message']) . "' WHERE `id_klass`=32;");
    Или даже так
    Код (Text):
    1. $sql =mysql_query ("UPDATE `klass` SET `message`= 0x" . bin2hex($_POST['message']) . " WHERE `id_klass`=32;");
    (одно и тоже по сути, просто так, для информации)
     
  5. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Vladson

    В этом конкретном случае безопасностью только запутать можно =)
    Оцени саму проблему.
     
  6. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Нужно !!! (иначе не избежать проблем, я через это прошёл, уж лучше бы меня запутали...)
     
  7. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    человек на форуме с 01.02.2006 (ладно, допустим случайность) 162 сообщения - это уже настораживает.
    не понимает про Регистр Глобалс и про кавычки в sql запросе.
    Причем сам, методом проб и ошибок, не может это решить. Какая еще безопасность???
     
  8. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    tommyangelo
    Так никто же не объясняет, все дают готовое решение, и никто не объяснит почему...
     
  9. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Vladson

    О, мне понравилась фраза если не ошибаюсь Simpliest, что умный человек сам поймет что к чему, где он допустил ошибку, а неумному объяснять - только зря время потратишь )))
     
  10. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Как правило да, но исключения бывают (я вот когда начинал был тупым реально, но потом "научился учиться")
     
  11. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Тогда вспомни как это происходило и бежал ли на форум при малейшей трудности?
    Думаю нет, шишки набивались самостоятельно и головой об стену. Это естественный процесс.
     
  12. Vladson

    Vladson Старожил

    С нами с:
    4 фев 2006
    Сообщения:
    4.040
    Симпатии:
    26
    Адрес:
    Estonia, Tallinn
    Стыдно вспоминать, но ...
    http://forums.overclockers.ru/viewtopic ... 28&t=43777
    http://forums.overclockers.ru/viewtopic ... 28&t=56716
    http://forums.overclockers.ru/viewtopic ... 28&t=67948
    (как думаешь, я хотя бы думал в ман лезть и включать мозги ?)

    Потом на форуме одном меня послали нах-фик, и я стал больше гуглить...
     
  13. aziz

    aziz Активный пользователь

    С нами с:
    1 фев 2006
    Сообщения:
    194
    Симпатии:
    0
    Адрес:
    Ташкент
    У меня было:
    Код (Text):
    1.  
    2. $message=$_POST['message'];
    3.  $sql =mysql_query ("UPDATE `klass` SET `message`=".$message."  WHERE `id_klass`=32;");
    Просто
    Код (Text):
    1.  $message=$_POST['message'];
    я не включил в тему.
    Но почемуто эта конструкция не работало. Выдавало ощибку. В данное время скрипт не подрозумевал проверку на безопасность. Он был на стадии проверки.