Heim >Backend-Entwicklung >PHP-Tutorial >请教一个简单的投票页面,post怎么写
以前写过一个简单的投票功能,作用是php post值 如果和数据库内容一致,则count+1 截图如下
<form method="post" action="check.php"> <input type="text" name="test"> <input type="hidden" name="action" value="send"> <input type="submit" name="Submit" value="提交"> </form> <?php$conn = mysql_connect("127.0.0.1:8889","root","root"); $action = $_POST['action']; if($action == 'send'){ $test = $_POST['test']; mysql_select_db("test3",$conn); $sql = ("update tll set count=count+1 where tl01='$test'");$result = mysql_query($sql,$conn); } ?>
<form method="post" action="check.php"> <input type="text" name="test[]"> <br /><input type="text" name="test[]"> <br /><input type="text" name="test[]"> <br /><input type="hidden" name="action" value="send"> <input type="submit" name="Submit" value="提交"> </form> <?php$conn = mysql_connect("127.0.0.1:8889","root","root"); $action = $_POST['action']; if($action == 'send'){ $test = $_POST['test[]']; mysql_select_db("test3",$conn); $sql = ("update tll set count=count+1 where tl01='$test'");$result = mysql_query($sql,$conn); } ?>的话就完全行不通了 ,实在不懂,请大神帮忙看下改下代码,十分感谢!
$_POST['test']就能取到这几个了,结果是一个数组
$_POST['test[]']是获取不到值的,你需要获取$_POST['test'],它的值是个数组,比如可能是:
array('111', '222','333')
然后你需要对数组进行遍历,插入到数据库中,你的数据库不能单纯的用等于号来获取:
tl01='$test'"
mysql没有这种语句,mysql处理多个语句需要用in操作:
where tl01 in ('111', '222', '333')
所以,你需要把数组转换成mysql需要的字符串:('111', '222', '333'),才能实现你的功能
$_POST['test[]']是获取不到值的,你需要获取$_POST['test'],它的值是个数组,比如可能是:
array('111', '222','333')
然后你需要对数组进行遍历,插入到数据库中,你的数据库不能单纯的用等于号来获取:
tl01='$test'"
mysql没有这种语句,mysql处理多个语句需要用in操作:
where tl01 in ('111', '222', '333')
所以,你需要把数组转换成mysql需要的字符串:('111', '222', '333'),才能实现你的功能
$conn = mysql_connect("127.0.0.1:8889","root","root"); $action = $_POST['action']; if($action == 'send'){ $test = join("','", $_POST['test']); mysql_select_db("test3",$conn); $sql = ("update tll set count=count+1 where tl01 in ('$test')"); $result = mysql_query($sql,$conn); }
$conn = mysql_connect("127.0.0.1:8889","root","root"); $action = $_POST['action']; if($action == 'send'){ $test = join("','", $_POST['test']); mysql_select_db("test3",$conn); $sql = ("update tll set count=count+1 where tl01 in ('$test')"); $result = mysql_query($sql,$conn); }大神 解决了!十分感谢!请问这知识点是哪本书上学到的?我要再去看看。
$conn = mysql_connect("127.0.0.1:8889","root","root"); $action = $_POST['action']; if($action == 'send'){ $test = join("','", $_POST['test']); mysql_select_db("test3",$conn); $sql = ("update tll set count=count+1 where tl01 in ('$test')"); $result = mysql_query($sql,$conn); }大神 解决了!十分感谢!请问这知识点是哪本书上学到的?我要再去看看。