За последние 24 часа нас посетили 53487 программистов и 1765 роботов. Сейчас ищут 1545 программистов ...

Обработка формы

Тема в разделе "PHP для новичков", создана пользователем Abdrey, 14 фев 2017.

  1. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Форма обрабатывается правильно и отправляет информацию нужную, но в БД при добавлении новой информации появляются пусты ячейки: (https://imgdepo.com/show/10293014)
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Хорошо
     
  3. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  4. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Notice: Undefined index: val

    PHP:
    1. mysqli_query($connection, "INSERT INTO `new_donation` (`tipy`, `name`, `cash`) VALUES('".$_POST['val']."','".$_POST['name_s']."','".$_POST['cash_s']."')");
    val ->

    HTML:
    1.                     <input type="radio" name="val" value="1"><span>Маленький(до 500)</span><br>
    2.                     <input type="radio" name="val" value="2"><span>Средний(от 500 до 1к)</span><br>
    3.                     <input type="radio" name="val" value="3"><span>Большой</span><br>
     
  5. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    МБ потому что форма не отправлена и/или не выбрано значение радиокнопки?
     
  6. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Форма отправляется правильно! Значения кнопок 1,2,3.
     
  7. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Воу-воу-воу. Не надо на меня кричать! Что var_dump($_POST) показывает?
     
  8. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    PHP:
    1. array(3) { ["val"]=> string(1) "2" ["name_s"]=> string(5) "sadas" ["cash_s"]=> string(3) "231" }[
     
  9. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Из этого следует, что либо не может быть нотиса, либо имя там или сям написано с ошибкой.
     
  10. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Вроде всё верно
     
  11. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Всё решил!
     
  12. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    И в чем беда была? Поделись с другими новичками.
     
  13. Abdrey

    Abdrey Новичок

    С нами с:
    13 фев 2017
    Сообщения:
    28
    Симпатии:
    3
    Возможно была проблема в том что я запрос в конце страницы открывал, и ещё немного мб упростил, как я понимаю:

    Код (Text):
    1. <?php
    2.                 if(isset($_POST['do_post']))
    3.                 {
    4.                         mysqli_query($connection, "INSERT INTO `new_donation` (`tipy`, `name`, `cash`) VALUES('".$_POST['val']."','".$_POST['name_s']."','".$_POST['cash_s']."')");
    5.                         echo '<p>Добавлено!</p>';
    6.                 }else {
    7.                    
    8.                 }          
    9.                 ?>
    10.                 <form class="form_new" action="newdonate.php" method="POST">
    11.                     <label>Какой донат?</label><br>
    12.                     <input type="radio" name="val" value="1"><span>Маленький(до 500)</span><br>
    13.                     <input type="radio" name="val" value="2"><span>Средний(от 500 до 1к)</span><br>
    14.                     <input type="radio" name="val" value="3"><span>Большой</span><br>
    15.                     <input type="text" class="new_form_name" name="name_s" placeholder="Имя челика..." value="<?php echo $_POST['name_s']; ?>">
    16.                     <input type="text" class="new_form_cash" name="cash_s" placeholder="Доллары..." value="<?php echo $_POST['cash_s']; ?>">
    17.                     <input type="submit" value="Отправить" class="form_submit" name="do_post">
    18.                 </form>
    И проблема ушла
     
  14. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    Определить отправку формы методом POST можно через метод запроса - _SERVER['REQUEST_METHOD']. Так налгляднее что ли.
     
    denis01 нравится это.
  15. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
  16. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Я как то давно читал книгу Л.Веллинг и Л.Томпсон "Разработка веб приложений с помощью PHP и MySQL",вот там аналогичный подход у авторов как у ТС,наверное где то с книг подцепил)
     
  17. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    @alexblack, да, в ней такое есть. Я тоже ее читал).