如何仅发布类别名称而不是我为帖子选择的值

时间:2014-12-29 11:17:04

标签: php mysql

我想通过php表单将从类别表中选择的值发布到软件表,但是当我发布表单时,它只发布id而不是我选择的值

<form name="post" id="form" action="" method="post" enctype="multipart/form-data">
<select name="category" id="category">
<option value="<?php echo $category"><?php
$categoryqu="SELECT * FROM categories";
$results=mysql_query($categoryqu);
while($row=mysql_fetch_assoc($results)){
$id=$row['cid'];
$name=$row['name'];
echo"<option value='".$id."'>".$name."</option>";
}?> 

</option>
</select>

<input placeholder="Title" name="title" value="<?php echo $title; ?>" type="text">
<input placeholder="Title" name="title" value="<?php echo $link; ?>" type="text">
<input placeholder="Title" name="title" value="<?php echo $description; ?>" type="text">    

类别表是 Category Table Image Link  并且它仅发布id而不是类别名称  here is the table posting the data from dropdown 当我发布表单时,它发布的一切都很好,但只有所选类别的值是发布值“id”,但我希望它将所选值发布到数据库,这是该代码上的错误

3 个答案:

答案 0 :(得分:0)

但您使用“ mcid ”来获取值。

答案 1 :(得分:0)

它只是因为你的PHP代码

$id=$row['mcid'];
$name=$row['name'];
echo"<option value='".$id."'>".$name."</option>";

您将$ id作为值传递,因此它将其作为该标记的值

只需使用此

即可
//$id=$row['mcid'];
$name=$row['name'];
echo"<option value='".$name."'>".$name."</option>";

答案 2 :(得分:0)

如果你想张贴两个你可以使用某种分隔符,只有在选中的值而不是标题的下拉列表。

示例:

 echo"<option value='".$id."#".$name."'>".$name."</option>";