2015-08-15 3 views
0

У меня есть простая форма в HTML, которая получает значения для фамилии и имени человека. Затем я использую PHP-файл, который отправляет эту форму в базу данных MySQL.Отправить значение вычисления вывода в HTML5

Я хочу сделать третью переменную под названием «имя», которая состоит из «firstname» и «lastname» вместе, и я хочу, чтобы это «имя» было отправлено в базу данных.

Однако мне также нужно отображать «имя», когда пользователь вводит свою фамилию и имя. Для этого я использую комбинации «oninput» и «output». Это сокращенная версия моего HTML файла:

<form 
action="file.php" 
method="post" 
oninput="name.value=lastname.value + space.value + firstname.value"> 

<input type="text" id="space" value=" "> 

<output id="name" name="name"> 
<input type="text" class="text" name="lastname"> 
<input type="text" class="text" name="firstname"> 

<input type="submit" id="submit" name="submit"> 
</form> 

И это то, что я делаю в PHP файле:

$name= $_POST['name']; 
$sql = "INSERT INTO table1 (name) VALUES ('$name')"; 

Я думаю, что проблема в том, что я просто не могу представить значение выхода? Потому что это отлично работает, если я хочу отправить «lastname» или «firstname», которые являются обоими входами.

Пожалуйста, помогите!

PS: Есть ли более простой способ включить пространство на «oninput»?

ответ

1

Почему бы вам просто не конкатенировать их после получения?

HTML

<form action="file.php" method="post"> 
<input type="text" class="text" name="lastname"> 
<input type="text" class="text" name="firstname"> 
<input type="submit" id="submit" name="submit"> 
</form> 

PHP

$name1 = $_POST['firstname']; 
$name2 = $_POST['lastname']; 

$name = $name1 . " " . $name2; 

$sql = "INSERT INTO table1 (name) VALUES ('$name')"; 
+0

Потому что у меня нет знания PHP вообще, ясно. Спасибо огромное! – naranjja

+0

@naranjja, все в порядке, мы все были там. Примите мой ответ, если он вам помог :) – user5173426