我正在尝试根据变量的结果更新数据库中的两个表中的一个。基本上,变量是“a”或“b”,基于表单选择。我将此变量定义为$ t。我也定义了其他变量。这是代码:
$t = $_POST['t']; //(defined in javascript from form selection)
$a = "a";
$b = "b";
//Create own rows in table based upon $t type
if ($t = $a){
$sql = "INSERT INTO user_a (id, email, user_type, name, create_time)
VALUES ('$db_id','$e','$a','$n', now())";
$query = mysqli_query($db_conx, $sql);
} else {
$sql = "INSERT INTO user_b (id, email, user_type, name, create_time)
VALUES ('$db_id','$e','$b','$n', now())";
$query = mysqli_query($db_conx, $sql);
exit();
}
我之前有一些编码,但我不认为这是问题,因为我可以更新两个表。我只能更新表“a”,而不是表“b”。感谢帮助。
答案 0 :(得分:1)
您正在为$t
分配一个值,而不是比较变量值,因此您的if语句将总是评估为true。
更改
if ($t = $a)
到
if ($t == $a)
作为强制性的旁注,您的查询对sql注入广泛开放,您应该使用prepared statements instead。