您的PHP代碼只會插入WeightUnit和TimeUnit選擇字段的值(例如,將WeightUnit設置爲1和2.2)。我不知道你的頁面/代碼還有什麼功能,但只需將字段的「值」更改爲「磅或千克」。
但我假設你正在HTML頁面上進行其他JavaScript計算,需要那些「1」和「2.2」值。如果是這樣的話,解決這個問題的方法之一是改變PHP頁面上的值,如下所示。這不是唯一的選擇,但很簡單。
if (ISSET($_POST['savecalories'])) {
session_start();
$currentweight = floatVal(mysqli_real_escape_string($db,$_POST['Weight']));
if (mysqli_real_escape_string($db,$_POST['WeightUnit']) == '1') $weightunit = 'Pounds'; else $weightunit = 'Kilograms';
//$weightunit = mysqli_real_escape_string($db,$_POST['WeightUnit']);
$activitytime = floatVal(mysqli_real_escape_string($db,$_POST['Time']));
if (mysqli_real_escape_string($db,$_POST['TimeUnit']) == '60') $timeunit = 'Minutes'; else $timeunit = 'Hours';
//$timeunit = mysqli_real_escape_string($db,$_POST['TimeUnit']);
$activity = mysqli_real_escape_string($db,$_POST['Activity']);
$calories = floatVal(mysqli_real_escape_string($db,$_POST['Calories']));
$userid = $_SESSION['userid'];
$query = mysqli_query($db,"INSERT INTO tracklog
(currentweight,weightunit,activitytime,timeunit,activity,calories,userid)
VALUES('".$currentweight."', '".$weightunit."', '".$activitytime."', '".$timeunit."','".$activity."', '".$calories."', '".$userid."')");
}
我希望我能正確理解你的問題。
感謝您的回答!我剛剛嘗試過,但現在沒有保存到我的sql數據庫:/ – Mal1234
什麼類型的MySQL字段是weightunit和timeunit列? VARCHAR?整數?上面的代碼更改之前是否至少插入了任何內容? – WeekendCoder
這兩個Varchar。是的,它是插入兩個數字值。但現在它說有一個標誌不匹配。 – Mal1234