PHP数据库未使用正确的值进行更新

时间:2014-03-23 19:26:10

标签: php html mysql sql

我正在尝试更新数据库以显示我的“图像ID”和我的“标记ID”但是,每次选择图像和“标记”时,它只会用“1”而不是相应的“id”更新它对于图像和标签。

这是我用来获取变量的代码。

  echo "<input type ='hidden' name ='id' value = '{$row['image']}'>";

这是运行SQL查询后显示的表:

echo "<td>";
echo "<select name ='dropdown'> 
    <option value='1'>dog</option>
    <option value='2'>cat</option>
    <option value='3'>dark</option>
    <option value='4'>light</option>
</select>"."</td>";
echo"<td>".'<input type="submit" name="tag" value="insertTag">'."</td>";

单击该按钮时,将执行以下操作:

if(isset($_POST['tag'])){ 
        $idpic= $_POST['id'];

    $selectbox = $_POST['dropdown'];


$sql = "INSERT INTO table3(ID ,PicutureID, IDtag)
VALUES('','.$idpic.','.$selectbox .')"; 

$runquery = mysql_query($sql) or die("<b>Error:</b> <br/>" . mysql_error());

为什么每次选择“cat”如何选择表3“IDtag”仍为1,同样“PicutreID”也不对应。

感谢您的帮助

2 个答案:

答案 0 :(得分:0)

以下

$sql = "INSERT INTO table3(ID ,PicutureID, IDtag)
VALUES('','.$idpic.','.$selectbox .')"; 

应该是

$sql = "INSERT INTO table3(ID ,PicutureID, IDtag)
VALUES('','".$idpic."','".$selectbox ."')"; 

OR

$sql = "INSERT INTO table3(ID ,PicutureID, IDtag)
VALUES('','$idpic','$selectbox')"; 

答案 1 :(得分:0)

首先,我认为查询中提到的字段名称(PictureID)是拼写错误。

如果不是这种情况,让我们看看查询中的连接,因为它似乎有点乱。它可以通过两种方式完成。

$sql = "INSERT INTO table3(ID ,PicutureID, IDtag) 
         VALUES('','".$idpic."','".$selectbox ."')"; 

如果上面的查询看起来很混乱,你可以将变量括在大括号内,并在一组双引号中一次性写出完整的代码。

$sql = "INSERT INTO table3(ID ,PicutureID, IDtag) 
        VALUES ('','{$idpic}','{$selectbox }')";

试试这些并告诉我。