我有這個疑問,這個人是在COMP_NAME做工精細如何在MySQL數據庫中減去一個基於另一個表值的表值?
$qu= "UPDATE comp_controller SET num_comp=(num_comp-(SELECT num_comp FROM alloted_comp WHERE comp_name="Arduino uno")) WHERE comp_name ="Arduino uno"";
我已經使用預定義的價值,但必須從以下查詢得到COMP_NAME
$sql="INSERT INTO alloted_comp (comp_type,comp_name,num_comp)VALUES ('$_POST[comp_type]','$_POST[comp_name]','$_POST[num_comp]') ";
如何讓從第一次查詢插入值第二個查詢
更新:
我modifie d我的代碼
$type = isset($_POST['comp_type'])? $_POST['comp_type'] : '';
$name = isset($_POST['comp_name'])? $_POST['comp_name'] :'';
$comp = isset($_POST['num_comp]'])? $_POST['num_comp]'] :'';
$sql="INSERT INTO alloted_comp (comp_type,comp_name,num_comp)
VALUES ('$_POST[comp_type]','$_POST[comp_name]',$_POST[num_comp])
ON DUPLICATE KEY UPDATE num_comp=num_comp+'$_POST[num_comp]'";
$qu= mysql_query("UPDATE comp_controller SET num_comp=
(num_comp-(SELECTnum_comp FROM alloted_comp
WHERE comp_name='$name'))WHERE comp_name ='$name' ");
現在我面臨着新的問題,變電站,如果我進入num_comp 1,它將值2或3或有時垃圾值
該代碼易受SQL注入攻擊 –
使用準備好的查詢或mysqli_real_escape_string來轉義變量。 –
@HikmatSijapati謝謝你的回答,工作正常,但有減法問題。如果我輸入num_comp 1,它會減去值爲2或3或有時在comp_controller中的num_comp變爲0 – kiran