2014-01-06 81 views
0

我試圖獲得一個表格,將我的信息保存在我的數據庫中。我的表單將下面的代碼發送到數據庫,但如果我更新頁面,重新加載或者希望加載頁面,表單中的信息將發送到我的數據庫。當頁面更新或加載時,表單發送信息到數據庫

它應該以這種方式工作,當你點擊「提交」,然後發送信息 - 只有當你點擊提交。

我想我缺少某種瓦爾或什麼!

這是我的PHP代碼:

<? 
include "../config.php"; 

mysql_query("insert into profiles set name= '".$_POST["name"]."', age= '".$_POST["age"]."', text= '".$_POST["text"]."', country = '".$_POST["country"]."'"); 
?> 

和我的形式看起來像:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" name="myform" id="myform"> 
name: <input type="text" name="name"><br /> 
age: <input type="text" name="age"><br /> 
text: <input type="text" name="text"><br /> 
country: <textarea name="country" rows="5" cols="40"></textarea><br /> 
<input type="submit"> 
</form> 

什麼IM我DOIG錯了嗎?請指教。

+0

如果這實際上是您的表單/驗證的一切,那麼您會錯過很多... – Loko

+0

您沒有代碼驗證,您使用的是mysql_函數(已棄用),您直接設置$ _POST global以進入數據庫如果我寫的sql代碼將被執行... 請在谷歌或這裏搜索關於PHP表單驗證等。 – Svetoslav

回答

0

使用isset 作爲

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" name="myform" id="myform"> 
name: <input type="text" name="name"><br /> 
age: <input type="text" name="age"><br /> 
text: <input type="text" name="text"><br /> 
country: <textarea name="country" rows="5" cols="40"></textarea><br /> 
<input type="submit" name="submit_name"> 
</form> 

附加name屬性提交按鈕

<? 
include "../config.php"; 
if(isset($_POST['submit_name'])) 
{ 
mysql_query("insert into profiles set name= '".$_POST["name"]."', age= '".$_POST["age"]."', text= '".$_POST["text"]."', country = '".$_POST["country"]."'"); 
} 
?> 

現在,只有當提交按鈕查詢運行被點擊

0

你應該有解決您的按鈕名稱:

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

然後你就可以檢查按鈕實際上是按下很容易

if(isset($_POST["formSubmit"]) == true) { 
    mysql_query("insert into profiles set name= '".$_POST["name"]."', age= '".$_POST["age"]."', text= '".$_POST["text"]."', country = '".$_POST["country"]."'"); 
} 
0

試試這個簡單的代碼:

HTML:

<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>" name="myform" id="myform"> 
name: <input type="text" name="name"><br /> 
age: <input type="text" name="age"><br /> 
text: <input type="text" name="text"><br /> 
country: <textarea name="country" rows="5" cols="40"></textarea><br /> 
<input type="submit" name="send"> 
</form> 

PHP:

<?php 
include "../config.php"; 
if (isset($_POST['send'])) { 
    mysql_query("insert into profiles set name= '".$_POST["name"]."', age= '".$_POST["age"]."', text= '".$_POST["text"]."', country = '".$_POST["country"]."'"); 
} 
?> 
0

的形式保存到數據庫

<?php 
mysql_query("INSERT INTO profiles ('name','age','text') VALUES ('".$_POST[name]."','".$_POST[age]."','".$_POST[text]."')"); 

修復操作屬性附加傷害沒有用htmlspecialchars當變化提交按鈕

<input type="submit" name="btn" value="Submit"> 

if(isset($_POST[btn])) 
    { 
    //write your query here 
    } 
-1

試試這個代碼

<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>" name="myform" id="myform"> 
相關問題