<?php
$retrive=mysql_query("SELECT * FROM oes.questions;");
$questions=mysql_fetch_array($retrive);
?>
<form action="delete.php" method="post">
<input type="checkbox" name="del" value=<?php $questions["q_no"] ?> /><?php echo $questions["q_no"]; ?>
<input type="submit" value="submit"/>
<?php
if(isset($_POST["del"]))
{
echo $_POST["del"];
}
?>
我想使用delete($ _POST [“del”])函数但是为了调试我使用了echo并发现它打印'/'。
答案 0 :(得分:1)
value='<?php echo $questions["q_no"]; ?>'
您没有回显$questions
索引的值。
编辑:帮助防止XSS:
确保正确设置标题:
header('Content-type: text/html; charset=utf-8');
value="<?php echo htmlspecialchars($questions['q_no'], ENT_QUOTES, 'UTF-8'); ?>"
答案 1 :(得分:1)
弹出的第一件事是你没有引用value属性:
value=<?php $questions["q_no"] ?> /
你也没有逃避$questions["q_no"]
的任何引用。由于值需要用引号括起来,并且添加额外的引号只会导致值设置为错误值,因此将一个奇怪的值发回服务器并不奇怪(甚至可能是表单HTML的其余部分,包括/).
答案 2 :(得分:1)
如上所述,你需要回应价值和qoute(')问题。试试这个
<input type="checkbox" name="del" value='<?php echo $questions["q_no"]; ?>' /><?php echo $questions["q_no"]; ?>
OR
<input type="checkbox" name="del" value="<?php echo $questions['q_no']; ?>" /><?php echo $questions["q_no"]; ?>
答案 3 :(得分:1)
<input type="checkbox" name="del" value=<?php $questions["q_no"] ?> />
您没有回答这个问题,因此您的HTML呈现为:
<input type="checkbox" name="del" value= />
因此解析为:
<input type="checkbox" name="del" value=" /">
您需要引用您的属性,并确保告诉PHP回应某些内容。
<input type="checkbox" name="del" value="<?php echo $questions["q_no"] ?>" />