【发布时间】:2022-11-18 14:48:51
【问题描述】:
我想将表值更新为 2 个值中的任意一个。 所选值有 2 个可能的选择我骑自行车或者我驾驶飞机。如果输入的值是 I ride a bike 那么数据库值应该设置为 1 ,如果是 I fly an airplan 那么该值应该设置为 2 。 这样,当我显示/查看表格时,将根据运输的值设置为显示自行车(称为 1.png)或飞机(称为 2.png)的图像。
// get the passed variables from the web form
$id=$_POST['id'];
$pid = $_POST['pid'];
$transport=$_POST['transport'];
// update data in mysql database
$sql = "UPDATE survey SET pid=?, transport=? WHERE id=?";
$stmt= $con->prepare($sql);
$stmt->bind_param("ssi", $pid, $transport, $id);
$stmt->execute();
上面的代码目前有效,但表格中显示的是 ride bike 或 fly airplane 的文字 我更喜欢简单的图像 所以我在想像使用 strlen 这样的东西,骑自行车有 15 个字符,或者飞机有 18 个
$sql = "UPDATE survey SET pid=?,if (strlen(['transport']) == 18){set '2';}else{set '1';} ,WHERE id=?";
但它不起作用,我不知道,因为这只是一种爱好。
【问题讨论】:
-
,WHERE看起来像错字。错误报告说什么?