Простая форма, не отправляющая данные через _POST

Вау, так что это неловко. Предполагается, что это еще одна скучная веб-форма. Я уже много сделал, но по какой-то причине этот конкретный не хочет сотрудничать. Я что-то пропустил? Я пытался это выяснить часами. Клянусь, я попробовал устранить все, без везения.

В основном, я пытаюсь отправить через $ _POST в файл PHP. В конце концов я буду использовать AJAX, но сейчас я даже не могу получить тупое ПОСТ. Поэтому, когда вы нажимаете кнопку «Отправить», она переходит на правильную страницу. Но я получаю сообщение об ошибке «Undefined Index» (затем указывает на строку, которую я называю переменной $ _POST). Я прокомментировал все на стороне PHP (signup1.php), так что теперь все, что он делает, это var_dump($_POST); поэтому я могу видеть данные, и он ничего не получает от _POST, глупость пуста. Я действительно думаю, что проблема на стороне HTML. Я точно отправлю свой код. У него есть тонна дополнительных разделов для стилей и макетов Я собираюсь сохранить все это там, на случай, если это является причиной ошибки, может быть, один из вас узнает. Кроме того, вы можете заметить, что я использую bootstrap. Может быть, это что-то? Я использовал бутстрап для форм раньше и работал, но кто знает.

 <form action="actions/signup1.php" method="post"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="name">Name:</label> <input type="text" id="name" class="form-control" placeholder="John Smith"> </div> </div> <!-- end of name input column --> <div class="col-md-6"> <div class="form-group"> <label for="phone">Phone Number:</label> <input type="text" id="phone" class="form-control" placeholder="801-321-9876"> </div> </div> <!-- end of phone number input column --> </div> <!-- end of first .row of inputs --> <div class="row"> <div class="col-md-6 column-sm-12"> <div class="form-group"> <label for="email">Email Address:</label> <input type="text" id="email" class="form-control" placeholder="johnsmith@me.com"> </div> </div> <!-- end of email address input column --> <div class="col-md-3 col-sm-6"> <div class="form-group"> <label for="city">City:</label> <select id="city" class="form-control"> <option>Las Vegas</option> <option>Salt Lake City</option> <option>I'll Choose a Default Later...</option> </select> </div> </div> <!-- end of city dropdown --> <div class="col-md-3 col-sm-6"> <div class="form-group"> <label for="type-of-phone">Type of Phone:</label> <select id="type-of-phone" class="form-control"> <option>iPhone</option> <option>Android</option> <option>Windows Phone</option> <option>Blackberry</option> <option>Other Cellphone</option> <option>Landline</option> </select> </div> </div> <!-- end of Smartphone Question Dropdown --> </div> <!-- end of second .row of inputs --> <div class="row"> <div class="col-md-12"><input type="submit" value="Submit"></div> </div> </form> 

Если у кого есть идеи, пожалуйста, дайте мне знать. Я вытаскиваю волосы. Я решил, что буду всю ночь с проблемами, связанными с запросом базы данных, или возиться с AJAX, чтобы сделать его отполированным, но вместо этого я не могу даже пройти мимо формы, представляющей данные RAW! Очень расстраивает. Я надеюсь, что кто-то там сможет увидеть эту проблему.

Для записи это мое точное сообщение после того, как форма перенаправляется на signup1.php (да, это идет на правильную страницу). На PHP все, что я делаю, это Var_dump всей переменной $ _POST.

 var_dump($_POST); 

И это показывает мне следующее:

 array(0) { } 

Вы должны добавить атрибут name в поля формы.

Например:

 <input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876"> 

Попробуйте добавить атрибут имени к каждому тегу ввода и тегу select. Это нужно делать.

Используйте отредактированный скрипт:

 <form action="actions/signup1.php" method="post"> <div class="row"> <div class="col-md-6"> <div class="form-group"> <label for="name">Name:</label> <input type="text" id="name" name="name" class="form-control" placeholder="John Smith"> </div> </div> <!-- end of name input column --> <div class="col-md-6"> <div class="form-group"> <label for="phone">Phone Number:</label> <input name="phone" type="text" id="phone" class="form-control" placeholder="801-321-9876"> </div> </div> <!-- end of phone number input column --> </div> <!-- end of first .row of inputs --> <div class="row"> <div class="col-md-6 column-sm-12"> <div class="form-group"> <label for="email">Email Address:</label> <input type="text" name="email" id="email" class="form-control" placeholder="johnsmith@me.com"> </div> </div> <!-- end of email address input column --> <div class="col-md-3 col-sm-6"> <div class="form-group"> <label for="city">City:</label> <select id="city" name="city" class="form-control"> <option>Las Vegas</option> <option>Salt Lake City</option> <option>I'll Choose a Default Later...</option> </select> </div> </div> <!-- end of city dropdown --> <div class="col-md-3 col-sm-6"> <div class="form-group"> <label for="type-of-phone">Type of Phone:</label> <select id="type-of-phone" name="type-of-phone" class="form-control"> <option>iPhone</option> <option>Android</option> <option>Windows Phone</option> <option>Blackberry</option> <option>Other Cellphone</option> <option>Landline</option> </select> </div> </div> <!-- end of Smartphone Question Dropdown --> </div> <!-- end of second .row of inputs --> <div class="row"> <div class="col-md-12"><input type="submit" value="Submit"></div> </div> </form> 

Вывод:

введите описание изображения здесь

Если вы хотите опубликовать данные с помощью тега формы html, вы можете проверить его просто

 print_r($_POST); 

Попробуйте указать имя для каждого поля ваших полей ввода, а также предоставить имя для отправки кнопки. Таким образом, ваша проблема будет решена.

Если у кого-то есть эта проблема *

У меня была такая же проблема. Моя проблема заключалась в том, что я забыл атрибут method = "post" в элементе формы