Неопределенный индекс, когда я пытаюсь получить значение из тега select в HTML, используя PHP

César Escudero спросил: 28 марта 2018 в 04:10 в: php

Я пытаюсь получить значение из тега select в html с помощью PHP, но он продолжает говорить, что индекс не определен.

Моя форма HTML:

<form method="POST" action="proceso.php">
  <label for="language">Idioma</label>
  <select id="language" name="prueba">
    <option value="es_LA">Español</option>
    <option value="en_US">English</option>
  </select>
  <br>
  <label for="username">Nombre de usuario</label>
  <input type="text" name="username" id="username">
  <br>
  <label for="password">Contraseña</label>
  <input type="password" name="password" id="password">
  <br>
  <label for="email">Correo electrónico</label>
  <input type="email" name="email" id="email">
  <br>
  <label for="genderM">Masculino</label>
  <input type="radio" name="gender" id="genderM" value="M">
  <label for="genderF">Femenino</label>
  <input type="radio" name="gender" id="genderF" value="F">
  <label for="genderO">Otro</label>
  <input type="radio" name="gender" id="genderO" value="O">
  <br>
  <button type="submit">Enviar</button>
</form>

И вот как я пытаюсь получить значение в файле procesos.php:

$sql = "INSERT INTO account(username,userpass,email,gender) VALUES('$_POST[prueba],'$_POST[username]','$_POST[password]',$_POST[email]',$_POST[gender]')";

Ошибка говорит: Примечание: Неопределенный индекс: prueba


1 ответ

Owais Noor ответил: 28 марта 2018 в 04:26

В "INSERT INTO account (имя пользователя, пароль пользователя, адрес электронной почты, пол)" Здесь вы принимаете 4 переменные, но передаете "$ _POST [prueba]", "$ _ POST [имя пользователя]", "$ _ POST [пароль] ',' $ _ POST [электронная почта] ',' $ _ POST [пол] 'Пять к запросу

César Escudero ответил: 28 марта 2018 в 04:28
Да, знаю. Но я не запрашиваю свою базу данных, просто получаю значения в предложении. Даже если я попытаюсь получить значение в обычном var, например, $ var = $ _POST ['prueba']; он продолжает говорить неопределенный индекс
Owais Noor ответил: 28 марта 2018 в 04:29
но вы сохраняете только четыре значения ..
César Escudero ответил: 28 марта 2018 в 04:32
Нет ... Я получу сообщение об ошибке типа"значения, которые вы пытаетесь вставить, не соответствуют определенным столбцам", если я пытаюсь сделать запрос, но не делаю этого. Просто получаю значение в предложении. Как я уже говорил, если я прокомментирую предложение $ sql и попытаюсь сохранить значение в обычном var, оно будет повторять ошибку "undefined index".
Owais Noor ответил: 28 марта 2018 в 04:36
Очевидно, это покажет, что .. потому что значения не установлены, чем .. просто используйте функцию isset ... и все готово
Owais Noor ответил: 28 марта 2018 в 04:39
используйте это if (isset ($ _ POST ['prueba'])) {$ prueba = $ _POST ['prueba']; } чем использовать переменную $ prueba