2016-08-15 67 views
-1

我的問題是:如何在單擊按鈕時將number(int)插入countTable?如何只記錄int值從html(php)到mysql數據庫表?

這是我的示例代碼,謝謝。

HTML

<form action="check.php" method="POST"> 
    <button name="a">a</button> 
    <button name="b">b</button> 
    <button name="c">c</button> 
</form> 

check.php

require('connect.php'); 
$A = $_POST["a"]; 
$B = $_POST["b"]; 
$C = $_POST["c"]; 
$sql = "INSERT INTO countTable (numA,numB,numC) 
VALUES(:numA,:numB,:numC)"; 
$pre = $conn->prepare($sql); 

$pre->bindValue(':numA',$A); 
$pre->bindValue(':numB',$B); 
$pre->bindValue(':numC',$C); 

$r = $pre->execute(); 

MySQL的countTable

create table countTable (
id varbinary(64) not null, 
numA int(100), 
numB int(100), 
numC int(100), 
primary key(id) 
); 
+1

該代碼失敗的方式是什麼? – David

+0

@David 當我點擊A按鈕時出現錯誤,其餘的B和C按鈕就像這樣 - >注意:未定義索引.... – Tuang

+1

a,b,c不是整數,所以試圖將它們放入整數字段沒有意義 – 2016-08-15 02:33:35

回答

1

的按鍵用於創建事件,與其說是捕捉表單輸入。你實際上並沒有設置或捕捉任何值,所以你應該期望你的POST變量是空的。

根據您所要完成的是什麼,我想提出以下建議:

<form action="check.php" method="POST"> 
    <input type="hidden" name="option" value="A" /> 
    <input type="submit" value="A" /> 
</form> 

<form action="check.php" method="POST"> 
    <input type="hidden" name="option" value="B" /> 
    <input type="submit" value="B" /> 
</form> 

<form action="check.php" method="POST"> 
    <input type="hidden" name="option" value="C" /> 
    <input type="submit" value="C" /> 
</form> 

//PHP side 
$selected_value = $_POST['option']; 

//... do more stuff 

他,我們有3種不同形式,都帶有隱藏的價值代表。提交表單後,此隱藏值將通過POST發送。

+0

謝謝,我希望這可能有用,但如果值不是字符串=「A」, 我想int值,該int值是增加和記錄到表格當我點擊按鈕 – Tuang

+0

您將需要驗證值。在PHP文檔中查看'filter_var()'和'is_numeric()' – Chris

相關問題