Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
复选框和Isset使用PHP更新Mysql_Php_Mysql_Checkbox_Isset - Fatal编程技术网

复选框和Isset使用PHP更新Mysql

复选框和Isset使用PHP更新Mysql,php,mysql,checkbox,isset,Php,Mysql,Checkbox,Isset,我无法使我的更新复选框功能正常工作。我需要能够删除或添加一个我选择调用checked到我的表中的值。代码如下所示 <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post"> Name <input type"text" name="inputName" value="<?php echo $hemsida['Namn']; ?>" /> </br> Commenta

我无法使我的
更新
复选框功能正常工作。我需要能够删除或添加一个我选择调用
checked
到我的表中的值。代码如下所示

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Name <input type"text" name="inputName" value="<?php echo $hemsida['Namn']; ?>" /> </br>
Commentar <input type"text" name="inputComment" value="<?php echo $hemsida['Comment']; ?>" />
<br/>
</br><input type="checkbox" name="all" value="<?php echo $hemsida['All']; ?>" 
<?php if($hemsida['All'] == 'checked') echo " checked"; ?> /> Alla



<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>" />
<input type="submit" name="submit" value="Redigera">
</form>
所有零件上的错误为
未定义变量:hemsida
。而且
您的SQL语法中有一个错误;查看与MySQL服务器版本对应的手册,以了解第1行“WHERE ID=33”附近要使用的正确语法
。但是我可以将数据输入到
修改器中,或者我应该称之为
的东西中,但无法将其取出

回答

我让它工作,但不能回答我自己的问题,所以我写在这里,我添加和删除代码,直到一切崩溃。删除“$all=($_POST['all']==1)?选中:;”部分,现在它可以工作了。我会复制下面的代码,有兴趣的话

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Name <input type"text" name="inputName" value="<?php echo $hemsida['Namn']; ?>" /> </br>
Commentar <input type"text" name="inputComment" value="<?php echo $hemsida['Comment']; ?>" />
<br/>
<input type="checkbox" name="all" value="checked"   <?php if($hemsida['All'] == 'checked') echo "checked=\"checked\""; ?>/> Alla
<input type="hidden" name="id" value="<?php echo $_GET['id']; ?>" />
<input type="submit" name="submit" value="Redigera">
</form>
  • 在您的代码中,$hemsida此时似乎不可用,但您正在使用它
  • 未选中时,$\u POST中不会显示输入类型=“checkbox”,使用isset

  • 旁注:您正在使用XHTML?正确的选中类型=
    checked=“checked”

    在您的sql语法中,$\u POST应该放在花括号中,比如“{$\u POST['inputName']}”Insert Insert instructive“请在此处使用而不是
    mysql
    ”注释“未定义的变量:hemsida”意味着您在尝试使用它之前不定义名为
    $hemsida
    的变量(isset($\u REQUES[])和$hemsidaI一起使用包括'connection.php';如果(!isset($\u POST['submit']){$q=“SELECT*FROM hemsida WHERE ID=$\u GET[ID]”;$result=mysql\u query($q);$hemsida=mysql\u fetch\u array($result);}来查找$hemsida,但这为什么不起作用对我来说是个谜。
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    Name <input type"text" name="inputName" value="<?php echo $hemsida['Namn']; ?>" /> </br>
    Commentar <input type"text" name="inputComment" value="<?php echo $hemsida['Comment']; ?>" />
    <br/>
    <input type="checkbox" name="all" value="checked"   <?php if($hemsida['All'] == 'checked') echo "checked=\"checked\""; ?>/> Alla
    <input type="hidden" name="id" value="<?php echo $_GET['id']; ?>" />
    <input type="submit" name="submit" value="Redigera">
    </form>
    
        if(isset($_POST['submit'])) {
        $u = "UPDATE hemsida SET `Comment`='$_POST[inputComment]', `Namn`='$_POST[inputName]', `All`='$_POST[all]' WHERE ID = $_POST[id]";
        mysql_query($u) or die(mysql_error());
    
        echo "User has been modified";
        header("Location: ..//sokh.php");
    }