2016-02-08 8 views
0

После того, как я отправлю свои данные из формы, я не вижу ее сразу на своем экране, я должен обновить ее с помощью кнопки обновления браузера.Обновите страницу автоматически после отправки формы

<form action="" method="post"> 

<input type="submit" name="submit" > 

Я использовал функцию setTimeout, но он дал мне много вопросов, в представлении к базе данных и извлечения из него. Я не смог отладить его правильно, и поэтому я удалил эту функцию. Без setTimeout, я могу сохранить в базе данных и получить с помощью кнопки обновления. Но как мне сделать это сразу автообновление?

+0

первый, положить соединение б здесь, во-вторых, вы можете использовать функцию, возвращающих информацию из вашего db, затем, после вашего запроса на добавление, снова вызовите функцию! –

+0

Подробнее ... подробнее ... Это неверный вопрос. – Monty

ответ

1

я сделал с помощью JQuery и AJAX без обновления и загрузки страниц HTML файл с помощью AJAX

<html> 
    <head> 
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 
    <script type="text/javascript"> 
     $(document).ready(function(){ 

      $("#sub").click(function(){ 

       $.ajax({ 
          url: 'dbadd.php', 
          type: 'POST', 
          data: {naam:$("#nm").val()}, 
          success:function(response){ 
           $("#d1").html(response) 
          } 
         }); 
      }); 

     }); 
    </script> 
    </head> 
    <form method="post"> 
     Name : <input type="text" id="nm" name="name"> 
     <div id="d1"></div> 
    <input type="button" name="submit" id="sub" value="submit"> 
    </form> 
    </html> 

PHP файл: adddb.php

<?php 
    $con=mysql_connect("localhost","root"); 
    mysql_select_db("empl",$con); 
    $q=mysql_query("insert into emp(name) values ('".$_POST['naam']."')"); 
    $qq=mysql_query("select name from emp where name='".$_POST['naam']."'"); 
    while ($data=mysql_fetch_object($qq)) { 
     echo $data->name; 

    } 
?> 
+0

Простой способ сделать это? – user2885237

0

Установите действие, как: <?php echo $_SERVER['PHP_SELF']?>

, и это сделает трюк.

<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post"> 

Действие - это директива, которая запускает, что делать с данными. Если вы не укажете, как браузер должен делать аффининг?

+0

как-то это работает. – user2885237

+0

Любое другое решение? поскольку я пробовал это, и он не обновляет мою страницу с последними записями базы данных. Он по-прежнему показывает мне страницу перед представлением значений. – user2885237

1

Для использования обновить страницу этот код:

<META HTTP-EQUIV ='Refresh' Content ='0; URL =/'> 

Вы можете использовать как этот конец кода:

<?php echo "<META HTTP-EQUIV ='Refresh' Content ='0; URL =/'>"; ?> 
+0

Вы имеете в виду внутри вид action часть? или отделите – user2885237

+0

конец вашего PHP-кода. когда ваши данные хранятся в базе данных успешно. –

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