簡體   English   中英

提交html數據並停留在同一頁面上

[英]Submitting html data and staying on same page

我有一個表單頁面

<html>
<body>
    <form action="insert.php" method="post">
        App Name: <input type="text" name="fname" /><br><br>
        App ID: <input type="text" name="lname" /><br><br>

        <input type="submit" name="SubmitButton"/>
    </form>
</body>
</html>

這是php頁面:

<html>
<body>
<?php
    $con = mysql_connect("xxx","xxx","xxx");
    if (!$con)
    {
      die('Could not connect: ' . mysql_error());
    }

    mysql_select_db("db", $con);         
    $sql="INSERT INTO app (fname, lname) VALUES('$_POST[fname]','$_POST[lname]')";

    if (!mysql_query($sql,$con))
    {
      die('Error: ' . mysql_error());
    }

    echo "1 record added";

    mysql_close($con)
?>
</body>
</html>

現在,我希望它顯示1 record added到與表單相同的頁面上,而沒有該表單將其發送到新的insert.php頁面。 基本上,我希望提交表單保留在同一頁面上,也許會彈出一條新消息以表明它已經起作用。

我已經看過關於stackoverflow的一些答案,例如使用

if(isset($_POST['SubmitButton']))

但這不起作用。 也許我把它放錯了或使用不正確,但是有人可以幫我弄清楚嗎?

只需對其執行一個操作,然后設置if $_POST['submit']即可添加記錄,並且您可以將它們都放在同一個文件中。 如果您希望這樣做而不刷新頁面,則需要使用AJAX。

<html>
<body>
<?php
if (isset($_POST['SubmitButton'])) {
    $con = mysql_connect("xxx","xxx","xxx");
    if (!$con) {
        die('Could not connect: ' . mysql_error());
    }

    mysql_select_db("db", $con);

    $sql="INSERT INTO app (fname, lname)
    VALUES
    ('$_POST[fname]','$_POST[lname]')";

    if (!mysql_query($sql,$con)) {
        die('Error: ' . mysql_error());
    }
    echo "1 record added";

    mysql_close($con)
}
?>


<form action="" method="post">
App Name: <input type="text" name="fname" /><br><br>
App ID: <input type="text" name="lname" /><br><br>

<input type="submit" name="SubmitButton"/>
</form>
</body>
</html>

另外, 不建議使用 mysql_* ,因此您應考慮轉換為PDO或MySQLi以避免SQL注入!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM