我需要你的帮助来解决一个愚蠢的问题。 我的数据库中有2个表(内容和类别)。
我填充了名为“categories”的MySQL表,现在我希望在表单中看到存储在数据库中的旧类别,同时将其修改为新类别。
不幸的是,我写的只显示了从数据库表中获取的类别列表。
<select name="PostedCat">
<?php
$query_category = "SELECT * FROM categ";
$result_category = mysql_query($query_categ) or die (mysql_error());
while($categ = mysql_fetch_assoc($result_category)){
?>
<option value="<?php echo $categ['cat_title']; ?>" ><?php echo $categ['cat_title']; ?></option>
<?php
}
?>
</select>
使用此代码,我可以看到存储在数据库中的类别,但是如何才能获得“旧”选择的类别?存储的一个?
希望得到一些帮助,但我现在是瞎了。
提前谢谢。
答案 0 :(得分:2)
假设您的旧类别位于$oldcat
,请执行
$query_category = "SELECT * FROM categ";
$result_category = mysql_query($query_categ) or die (mysql_error());
while($categ = mysql_fetch_assoc($result_category)){
?>
<option value="<?php echo $categ['cat_title']; if ($categ['cat_title']==$oldcat) echo '" selected="true'; ?>" ><?php echo $categ['cat_title']; ?></option>
<?php
}
?>
答案 1 :(得分:0)
所以,再次感谢你的善意。这就是我所做的。
我有一个页面,其中包含我所有内容的列表,并且靠近我的每个内容和“编辑”按钮。当我点击它时,我会转到一个新页面,其中包含一个填充表单,该表单直接从MySQL获取数据并将所有内容放在正确的字段中。 在function.php中我有:
function getPost($id) {
$id = (int) $id;
$query = mysql_query("SELECT * FROM contents WHERE id = '$id'") or die (mysql_error());
return mysql_fetch_array($query);
}
在edit.php中我举了例如:
<?php $editedpost = getPost($_GET['id']); ?>
<form action="editingPost.php" method="post">
<table>
<tr>
<td><label for="ContentTitle">Title</label></td>
<td><input type="text" name="ContentTitle" value="<?php echo $editedpost['content_title']; ?>" /></td>
</tr>
<tr>
<td><label for="ContentCategory">Category</label></td>
<td>
<select name="ContentCategory">
<?php
$query_category = "SELECT * FROM categ";
$result_category = mysql_query($query_categ) or die (mysql_error());
while($categ = mysql_fetch_assoc($result_category)){
?>
<option value="<?php echo $categ['cat_title']; ?>" >Here I would like to see the data stored in the database, that I choosed before.</option>
<?php
}
?>
</select>
</td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit_post_new" /></td>
<td><input type="hidden" name="id" value="<?php echo $_GET['id']; ?>" /></td>
</tr>
</table>
</form>