簡體   English   中英

更新MySQL表中的值,而不是添加新值

[英]Update values in a MySQL table instead of adding new ones

我正在嘗試為用戶創建一種通過HTML表單提交團隊得分的方法,並將這些值存儲在MySQL表中以供日后閱讀。

問題(除了我在網上發現隨機代碼外)是,我需要分數的每個實例(Score1,Score2,Score3等)才能更新其值。 因此,如果為“ Score1”添加了新分數,則應替換舊分數。 現在,它只是在創建帶有列出的每個新提交的行。

到目前為止,這就是我能夠匯總的內容。 這種形式將被重復大約200次(我要插入200分):

<form action="storage.php" id="scores" method="post">
   <input type="number" placeholder="00" maxlength="2" name="score" id="score1">

然后我的storage.php文件如下所示:

<?php
    $host     = "localhost"; // Host name 
    $username = "scoreboard"; // Mysql username 
    $password = "XXXX"; // Mysql password 
    $db_name  = "admin_scoreboard"; // Database name 
    $tbl_name = "scores"; // Table name 
    // Connect to server and select database.
    mysql_connect("$host", "$username", "$password") or die("cannot connect");
    mysql_select_db("$db_name") or die("cannot select DB");
    // Get values from form 
    $score1 = $_POST['score1'];
    // Insert data into mysql 
    $sql    = "INSERT INTO $tbl_name(score1)VALUES('$score1')";
    $result = mysql_query($sql);
    // if successfully insert data into database, displays message "Successful". 
    if ($result) {
        echo "Successful";
        echo "<BR>";
        echo "<a href='test.html'>Back to main page</a>";
    } else {
        echo "ERROR";
    }
    // close connection 
    mysql_close();
?>

萬一這令人困惑,我的總體目標是讓教練通過HTML表單為他們的團隊提交分數,將其存儲在MySQL中,然后在HTML表格中稍后顯示分數。 但是,是的,主要的是要讓教練回去並根據需要更新特定團隊的得分。 我會擔心在其他時間從MySQL取回數據:)

查詢:

INSERT INTO table (id, name, age) VALUES(1, "A", 19) 
    ON DUPLICATE KEY UPDATE name="A", age=19

嘗試這樣..

用這個替換您的查詢

INSERT INTO $tbl_name(score1) VALUES('$score1') 
    ON DUPLICATE KEY UPDATE score1='$score1'

暫無
暫無

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

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