2014-09-29 4 views
0

У меня есть простая форма HTML для добавления нового пользователя. После нажатия кнопки передачи Она начинается PHP-файл (вставка в базу данных MySQL, и т.д.), но авто Перенаправление add_user.phpHTML. Как остановить перенаправление после успешного завершения формы?

Это HTML-файл:

<html> 
<form method="post" action="add_user.php"> 
First name: <input type="text" name="vardas"><br> 
Kast name: <input type="text" name="pavarde"><br> 
<input type="submit" value="Add user"> 
</form> 
</html> 

мне нужно сделать, чтобы после того, как кнопка отправки является будет использоваться файл PHP с щелчком, но он должен оставаться в одном и том же файле HTML (а не перенаправлять) для добавления большего количества пользователей и должен показывать сообщение, например, «Пользователь добавлен успешно».

+1

положить код PHP в одной и той же странице и изменить вид действия для 'действия =«#»' или посмотреть в AJAX – gbestard

+0

Вы можете усовершенствовать выводим форму в вашем add_user.php файл, где вы проверяете, установлен ли POST или нет. – AndVla

+1

Поисковый запрос, который вы ищете, это * Ajax *. Там много учебных пособий. Написание другого ответа на этот вопрос было бы слишком широким для Stackoverflow. – Quentin

ответ

0
<?php 
if($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['vardas'])) { 
    //COPY CONTENTS OF add_user.php HERE 
    $success = "User inserted successfully"; 
} 
?> 

<html> 
<?php 
if(isset($success)){ 
    echo $success; 
} 
?> 
<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> 
First name: <input type="text" name="vardas"><br> 
Kast name: <input type="text" name="pavarde"><br> 
<input type="submit" value="Add user"> 
</form> 
</html> 
+0

Большое спасибо. Это сработало для меня. – 2014-09-29 13:19:36

+0

Добро пожаловать. – Daan

0

Вам необходимо использовать ajax или json для отправки данных на страницу php. также для предотвращения из формы подать нужно справа вернуть false.

экс

$(document).on('submit', "#form", function() { 

// do your ajax stuff 
return false; 
}); 
+0

Учитывая jQuery, вам лучше использовать eventArgument.preventDefault(), чтобы другие обработчики событий все равно получили событие. 'return false' остановит событие от пузыря DOM. – boxmein

Смежные вопросы