我构建了以下查询
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO selection (student_id, id_project, level_of_want)
VALUES ((SELECT id FROM users WHERE Username = ".$_SESSION['MM_Username']." ), %s, %s)",
GetSQLValueString($_POST['Project_id'], "int"),
GetSQLValueString($_POST['Want'], "text"));
mysql_select_db($database_projectsite, $projectsite);
$Result1 = mysql_query($insertSQL, $projectsite) or die(mysql_error());
}
student_id来自表格中比较的会话信息。
id_project来自隐藏字段,该字段应包含当前id,而level_of_want来自两个提交按钮。选择一个时,该值将应用于数据库。以下是表格中的外观。
<input type="submit" name="Want[]" id="Want_0" value="Really Want" />
<input type="submit" name="Want[]" id="Want_1" value="Partially Want" />
</p>
<p>
<input name="Project_id" type="hidden" id="Project_id" value="<?php echo $row_Test['Project_id']; ?>" />
</p>
但是,当我执行此操作时,没有信息应用于数据库,选择按钮时也不会显示错误消息。有没有人知道什么是错的?
答案 0 :(得分:2)
我猜是因为“SELECT id”返回空结果集
尝试以下方法:
SELECT id FROM users WHERE Username = '".$_SESSION['MM_Username']."'
注意双引号
附近的额外单引号答案 1 :(得分:0)
森,
在提交输入上看到的是一个数组
<input type="submit" name="Want[]" id="Want_0" value="Really Want" />
<input type="submit" name="Want[]" id="Want_1" value="Partially Want" />
所以要获得价值
GetSQLValueString($_POST['Want'][0], "text"));
Tomz