php和html表单在同一页面上

时间:2012-12-09 02:04:22

标签: php html mysql

我正在学习php。我将一些值从一个页面传递到另一个页面,并让用户在此页面中输入表单,然后存储到数据库中。

我想留在同一页面,所以不要这样 第一页 -

<form method="post" action="update.php">
   <input type="text" name="name" value="value1" />
</form>

update.php

<?php
   $name= $_POST['name'];
?>

我想要在同一页面上,因为我从前一页获得了一些带有get()的变量和数组

<?php 

$count= $_GET['count'];
$sum= $_GET['Sum'];
for ($i=0;$i<$count;$i++){
echo unserialize($_GET['serialized_name'])[$i];
?>

因为我还需要发送表单值,所以我不知道如何传递我到达下一页的值 - 这就是为什么我希望在同一页面上而不是去update.php

3 个答案:

答案 0 :(得分:1)

试试这个,把所有这些代码放在你想留下的页面上(我说这是update.php):

<?php
    if($_POST['submit_button'] == "Submit")
    {
        $name= $_POST['name'];
    }
?>

    <form method="post" action="update.php">
       <input type="text" name="name" value="value1" />
       <input type="submit" name="submit_button" value="Submit"/>
    </form>

答案 1 :(得分:1)

您可以使用<input type=submit上方的隐藏字段将更多数据传递到update.php。

e.g。 <input type="hidden" name="some_data" value="<?php echo $some_data; ?>" />

当然,任何网络访问者如果使用浏览器的“查看源代码”功能,都可以看到这些数据,因此只能使用不会导致安全问题的数据。

然后,在update.php中,您可以通过执行$some_data = $_POST["some_data"]

之类的操作来访问该数据

答案 2 :(得分:1)

    <?php 
       @session_start();
       $_session['count']= $_GET['count'];
       $_session['sum']= $_GET['Sum'];
       for ($i=0;$i<$_session['count'];$i++){

          //make necessary changes here as well
         echo unserialize($_GET['serialized_name'])[$i];

         //use session to store your data from previous page
       ?>
     <?php
         //put this code above the form to process the submitted data which was previously sent to update.php

      if(isset($_POST[submit])){
                //Your code
        e.g.
              $name=$_POST['name']
           //whenever you want to access previous data just get it from session variable.
         e.g. $count=$_SESSION['count'];

      }?>

     <html>
            <!--Submit the data of the form to itself instead of update.php -->
       <form method="post" action="<?php echo $PHP_SELF;?>">
           <!--your html code -->
       </form>
     </html>