我有下面的下拉菜单,它从数据库中检索可能的模块ID和用户可以从中选择的模块名称。
以下是此代码:
$moduleHTML = "";
$moduleHTML .= '<select name="module" id="modulesDrop">'.PHP_EOL;
$moduleHTML .= '<option value="">Please Select</option>'.PHP_EOL;
foreach ($courseData['Modules'] as $moduleId => $moduleData) {
$moduleHTML .= "<option value='".$moduleId.' '.$moduleData['ModuleName']."'>" . $moduleId . " - " . $moduleData['ModuleName'] ."</option>".PHP_EOL;
}
}
$moduleHTML .= '</select>';
现在提交表单时,在下一页上我只想将'ModuleId'插入'ModuleId'字段。但它正在做的是它插入moduleId和ModuleName的第一个字母。
例如,如果用户从下拉菜单中选择模块“CHI2520 Systems Strategy”,那么当我将其插入数据库时,而不是在'ModuleId'字段中插入'CHI2520'时,它会插入'CHI2520 S '在'ModuleId'。
如何修复插入以便它只插入模块ID而不是模块ID和模块名称的第一个字母?
以下是INSERT VALUES到数据库中的代码:
$sql="INSERT INTO Session (ModuleId)
VALUES
(' ". mysql_real_escape_string( $_POST['module'] ) . "')";
答案 0 :(得分:1)
更改此部分:
"<option value='".$moduleId.' '.$moduleData['ModuleName']."'>"
到
"<option value='$moduleID'>"