Как я могу получить данные ввода пользователя типа «дата» в моей базе данных SQL, используя PHP 7? - PullRequest
0 голосов
/ 12 января 2020

Я пытаюсь вставить пользовательские данные в формате type="date" в мою базу данных SQL, используя PHP. Однако, когда я использую метод $_POST для извлечения данных из формы HTML в мой файл PHP для обработки, значение даты не поступает, а другие значения -. Вот мой код:

HTML (сокращенный код)

<form action"process.php" method="POST" >
  <input type="text" id="fname" name="firstname" placeholder="First Name>
  <input type="date" id="dateOfBirth" name="dateOfBirth" placeholder="2020-01-01" >
  <input type="submit" value="Submit" id="submitButton" >
</form>

PHP (сокращенный код)

$fname = $_POST['fname'];
$dateOfBirth = $_POST['dateOfBirth'];

if (!empty($fname)) {
    die("First Name is empty! <br>");
} else {
    echo "First Name is not empty! <br>";
}

if (!empty($dateOfBirth)) {
    die("Date of Birth is empty! <br>");
} else {
    echo "Date of Birth is not empty! <br>";
}

Выходы из PHP файл:

First Name is not empty!
Date of Birth is empty!

Данные fname в порядке, используя метод $ _POST, но данные dateOfBirth не переносятся через $ _POST на страницу PHP. Мысли?

1 Ответ

0 голосов
/ 12 января 2020

Логика c для ваших двух if (!empty(...)) инвертирована, поэтому на самом деле fname делает НЕ , хотя, но dateOfBirth делает.

$_POST['fname'] не не существует, ваш элемент имеет имя firstname, и поскольку ваша логика c инвертирована, выглядит так, как будто fname установлено. Измените код на

$fname = $_POST['firstname'];
$dateOfBirth = $_POST['dateOfBirth'];

if (!empty($fname)) {
    echo "First Name is not empty! <br>";
} else {
    die("First Name is empty! <br>");
}

if (!empty($dateOfBirth)) {
    echo "Date of Birth is not empty! <br>";
} else {
    die("Date of Birth is empty! <br>");
}

, чтобы он работал так, как вы хотите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...