从表单输入中获取值,然后将它乘以MySQL表格单元格值并将结果写入同一表格中的另一个单元格
问题描述:
请原谅我的无知,我仍然是初学者,我甚至不知道这是否可行。从表单输入中获取值,然后将它乘以MySQL表格单元格值并将结果写入同一表格中的另一个单元格
我需要根据另一种货币(基于欧元,以美元输出)在一种货币中插入价格表。
我有形式采取的转换乘数值输入,并把这些值到一个数组应该是比较简单(甚至对我!)
<?php
// Make a MySQL Connection
$query = "SELECT price FROM table";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo $row[euros].
//here is where I need to perform the calculation with the result going into $row[dollars](euros * ex.rate = dollars)
UPDATE table SET dollars=INT($row[dollars]);
}
?>
不幸的是,我需要这个捣鼓更多因为它不起作用。
我无法弄清楚的是如何将表单输入与每个欧元值相乘并将结果以整数形式写入合适的美元单元。
答
我会做什么是写这一个SQL查询:
UPDATE `table` SET dollars=euros*1.23 WHERE 1
你可以,当然,这样做在PHP中:
<?php
// first, prevent anyone from tampering with the query!
$factor = floatval($user_input);
// then the query itself
$result = mysql_query("UPDATE `table` SET dollars=euros*{$factor} WHERE 1");
?>
当我在写,使用时关联数组,你应该使用单引号,例如不是$ row [dollars],而是$ row ['dollars']。将这些内容包含在内:
echo "dollars: {$row['dollars']}";
很快!非常感谢。我会试试这个。 – user1008325
而你并不需要'WHERE 1'部分。 –
我猜你不知道。我用它来提醒我正在更新表中的所有行,所以我不得不考虑这些;我真的想更新他们__吗? – toon81