php - 以表格形式显示取自 ENUM 的当前值
问题描述
我在mysql数据库中有一个“ENUM”类型的字段,该字段称为“career_status”,这些值被存储,Active,Retired,Dead
我创建了一个用于更新的表单,我想要并在表单中显示当前值。示例:如果现在它存储在表单中显示 Active,如果没有任何内容为空等..如何从字段中获取这些值?这是代码
<?php
require_once("connetti.php");
$actor_id = $_GET["id"];
$query = mysql_query("SELECT * FROM actor WHERE actor_id=" . (int)$actor_id) or die ("Error in query: " . mysql_error());
$row = mysql_fetch_array ($query);
$nome=$row['nome'];
$performer_aka=$row['performer_aka'];
$website=$row['website'];
$career_status=$row['career_status'];
$birthday=$row['birthday'];
$died=$row['died'];
$status=$row['status'];
?>
<div id="BioData" style="overflow: hidden;">
<center><h1><?php echo $nome;?> <span class="infoblock-pagetype">modifica dati</span></h1></center>
<form action="<?php echo $_SERVER['PHP_SELF'] . '?id=' . $actor_id; ?>" method="post">
<tr>
<td class="paramname">
<b>Career Status: </b> (<b><font color="red">selezionare il valore</font></b>)
</td>
<td class="paramvalue">
<select name="career_status" id="career_status"><?php echo $career_status;?>
<option value="1">Active</option>
<option value="2">Retired</option>
<option value="3">Dead</option>
<option value="0"> </option>
</select>
</td>
</tr>
<?php
if (isset($_POST['modifica']))
{
//include "connetti.php";
//$query = mysql_select_db("xxx", $db);
if ($query)
{
$nome=$_POST['nome'];
$performer_aka=$_POST['performer_aka'];
$website=$_POST['website'];
$career_status=$_POST['career_status'];
$birthday=$_POST['birthday'];
$died=$_POST['died'];
$status=$_POST['status'];
$query=mysql_query("UPDATE actor SET
nome='".$_POST['nome']."',
performer_aka='".$_POST['performer_aka']."',
website='".$_POST['website']."',
career_status='".$_POST['career_status']."',
birthday='".$_POST['birthday']."',
died='".$_POST['died']."',
status='".$_POST['status']."'
WHERE actor_id=". $actor_id);
if($query) echo "<h2>Congratulazioni! Dati inseriti.</h2>";
else echo "<h2>Attenzione! Dati non inseriti!</h2>";
} else echo "<h2>Errore! Database non selezionato.</h2>";
}
?>
解决方案
如果我理解正确,您希望指出career_status
当前为记录选择了哪个选项,那么以下内容可能会有所帮助
<select name='career_status'>
<?php
/* possible options for career status */
$status=array(
0=>'',
1=>'Active',
2=>'Retired',
3=>'Dead'
);
for( $i=0; $i < count( $status ); $i++ ){
/* is this item selected? */
$selected = $i==$career_status ? ' selected' : '';
printf('
<option value="%d"%s>%s',
$i,
$selected,
$status[ $i ]
);
}
?>
</select>
推荐阅读
- google-api - 从浏览器调用反向地理编码 API 时如何限制 API 密钥?
- google-app-engine - 我可以在谷歌应用引擎中创建新服务吗?
- android - Android coreLibraryDesugaringEnabled,使用 NoSuchMethodError 连接测试崩溃
- python-3.x - 基于不同列的过滤器从 Pandas DataFrame 中提取文本
- proxy - 在节点 webkit 中使用 PAC 脚本设置代理
- java - Red Hat Enterprise Linux 服务器的主机名
- mysql - 驱动程序发生异常:找不到驱动程序
- python - 代码导航在vscode python中不起作用
- r - 从 r 中的 qda 函数进行预测
- wix - 对于 Wix Toolset 和 UpgradeVersion 标签是 Property ever reset