请问一个简单的投票页面,post如何写

WBOY
풀어 주다: 2016-06-13 12:27:00
원래의
1048명이 탐색했습니다.

请教一个简单的投票页面,post怎么写
以前写过一个简单的投票功能,作用是php post值 如果和数据库内容一致,则count+1  截图如下

<form method="post" action="check.php"> <br /><input type="text" name="test"> <br /><br /><input type="hidden" name="action" value="send"> <br /><input type="submit" name="Submit" value="提交"> <br /></form> <br /><br /><?php<br />$conn = mysql_connect("127.0.0.1:8889","root","root"); <br />$action = $_POST['action']; <br />if($action == 'send'){ <br />$test = $_POST['test']; <br /><br />mysql_select_db("test3",$conn); <br />$sql = ("update tll set count=count+1 where tl01='$test'");<br />$result = mysql_query($sql,$conn); <br />} <br />?> 
로그인 후 복사


现在希望把check.php由原来的单个框改成多个进行投票 网上查了下,要用到数组 我把代码改成
<br /><form method="post" action="check.php"> <br /><input type="text" name="test[]"> <br /><br /><input type="text" name="test[]"> <br /><br /><input type="text" name="test[]"> <br /><br /><input type="hidden" name="action" value="send"> <br /><input type="submit" name="Submit" value="提交"> <br /></form> <br /><br /><?php<br />$conn = mysql_connect("127.0.0.1:8889","root","root"); <br />$action = $_POST['action']; <br />if($action == 'send'){ <br />$test = $_POST['test[]']; <br /><br />mysql_select_db("test3",$conn); <br />$sql = ("update tll set count=count+1 where tl01='$test'");<br />$result = mysql_query($sql,$conn); <br />} <br />?> 
로그인 후 복사
的话就完全行不通了 ,实在不懂,请大神帮忙看下改下代码,十分感谢!

再问下,数据库的格式是“1空格1空格1” 这个格式是固定的
投票页面 如果投票成功,数据库的count的确+1的话echo投票成功,如果不成功(比如格式错了,或者填写错误)echo
投票失败,,这个怎么做呢?90分献上,望指教!
------解决思路----------------------
$_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"); <br />$action = $_POST['action']; <br />if($action == 'send'){ <br />  $test = join("','", $_POST['test']);<br /> <br />  mysql_select_db("test3",$conn); <br />  $sql = ("update tll set count=count+1 where tl01 in ('$test')");<br />  $result = mysql_query($sql,$conn); <br />}
로그인 후 복사
로그인 후 복사

------解决思路----------------------
引用:
Quote: 引用:

$conn = mysql_connect("127.0.0.1:8889","root","root"); <br />$action = $_POST['action']; <br />if($action == 'send'){ <br />  $test = join("','", $_POST['test']);<br /> <br />  mysql_select_db("test3",$conn); <br />  $sql = ("update tll set count=count+1 where tl01 in ('$test')");<br />  $result = mysql_query($sql,$conn); <br />}
로그인 후 복사
로그인 후 복사
 大神 解决了!十分感谢!请问这知识点是哪本书上学到的?我要再去看看。

再问一下输入框内格式错了,或者填写错误投票没成功echo投票失败,,这个怎么做呢?

不一定买书,上网多查查资料啊,主要是mysql相关的知识,你要学习mysql语法,就会了

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿