0
我無法讓我的update
複選框功能正常工作。我需要能夠刪除或添加我選擇的checked
到我的表中的值。代碼如下所示。複選框和Isset用PHP更新Mysql
<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>
和更新PHP看起來像這樣
if(isset($_POST['submit'])) {
$all = ($_POST['All'] == 1) ? "checked" : "";
$u = "UPDATE hemsida SET `Namn`='$_POST[inputName]', `Comment`='$_POST[inputComment]', `ALL`=$all WHERE ID = $_POST[id]";
mysql_query($u) or die(mysql_error());
echo "User has been modified";
header("Location: ..//sokh.php");
}
的錯誤是Undefined variable: hemsida
上的所有部件。還有You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE ID = 33' at line 1
。但我沒有問題的數據到Modifier
或我應該叫它,但無法解決它。
回答!!!
我得到它的工作,但不能回答我自己的問題,所以我寫下來,我添加並刪除代碼,直到一切都崩潰了。刪除「$ all =($ _POST ['All'] == 1)?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/>
<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>
新的PHP
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");
}
在你的sql語法中,$ _POST應該在大括號內,如'{$ _POST ['inputName']}' –
_Insert mustatory「請使用['mysqli'](http:// php.net/manual/en/book.mysqli.php)而不是'mysql'「comment here_ – jterry
」Undefined variable:hemsida「表示在嘗試使用它之前,您沒有定義名爲'$ hemsida'的變量。 – Joni