Php 根据每个id的自定义公式,仅使用1个输入字段更改MySQL价格?
我有一个数据库,里面有一些价格: 但我想给每个id一个公式,比如:[那个数字]*或/或-或+[并显示价格] 举个例子: 我只想在这里输入一个价格: 如果我键入10,那么我希望id=0的公式如下:Php 根据每个id的自定义公式,仅使用1个输入字段更改MySQL价格?,php,mysql,Php,Mysql,我有一个数据库,里面有一些价格: 但我想给每个id一个公式,比如:[那个数字]*或/或-或+[并显示价格] 举个例子: 我只想在这里输入一个价格: 如果我键入10,那么我希望id=0的公式如下: 10*8=80表中至少需要一个包含价格计算的其他字段。例如,一个名为math的字段将为+140。您可以使用一个输入框执行update语句。您可以根据id在update子句中使用CASE语句。它看起来像这样: UPDATE myTable SET price = CASE WHEN id = 0
10*8=80表中至少需要一个包含价格计算的其他字段。例如,一个名为math的字段将为+140。您可以使用一个输入框执行update语句。您可以根据id在update子句中使用CASE语句。它看起来像这样:
UPDATE myTable
SET price =
CASE WHEN id = 0 THEN (10 * 8)
WHEN id = 1 THEN (10 + 140) ELSE
0 END;
如果id不在您的任何类别中,您必须确定一个业务规则作为依据。在我的示例中,我只是将其设置为0。一个可能的解决方案是: 你有四种可能的操作,你可以说每个操作 有一个id号,例如: 0表示+,1表示-,2表示*和3表示/然后使用模块运算符 确定使用哪种操作员,例如: 例如,如果您正在使用PDO 。。。接通PDO控制器
try {
$conn = new PDO('mysql:host=localhost;dbname=myDatabase', $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare('SELECT * FROM myTable');
$stmt->execute();
while($row = $stmt->fetch()) {
print_r($row);
$operator = $row['id'] % 4;
switch ($operator) {
case 0:
$newValue = $inputField + price;
break;
case 1:
$newValue = $inputField - price;
break;
case 2:
$newValue = $inputField * price;
break;
default:
$newValue = $inputField / price;
}
$updateStmt = $conn->prepare('UPDATE myTable set prijs = :pirjs WHERE id = :id');
$updateStmt->execute(array('prijs' = $newValue, 'id' => $row['id']));$stmt->execute(array('id' => $id));
}
} catch(PDOException $e) {
echo 'ERROR: ' . $e->getMessage();
}
但是每个id都需要对价格进行不同的计算!我们只有一个价格,比如:3000,根据这个价格,我们必须准确地计算出每一个。我用不同的数学计算得出的每个字段对应一个字段。也就是说,id 1将是+140。Id 2将是/30,…*我只想在一个字段中键入总价,比如:10,然后根据该值进行数学运算,并在数据库中更新总价*谢谢,但我如何仅使用1个输入和一个按钮就可以实现这一点?like:在我的位置,它将根据键入的输入进行计算,如:3000?您可以添加一个where子句,将输入用作参数,其中id=@param@SSDYou添加,然后10*8$strSQL=updateorders$strSQL=SET prijs=$strSQL=id=0时的情况,然后是10*8$strSQL=当id=1时,则为10+140$strSQL=0结束$objQuery=mysql\u query$strSQL;如果$objQuery{echo Save Done.}否则{echo Error Save[.$strSQL.];}mysql\u关闭$objConnect;我不能把这项工作和数据库连接起来,你们可能有一个例子给我,我如何在php页面上用这个表单实现它:谢谢!谢谢现在我的页面上有这个,但我觉得有什么地方不对劲