请问一个简单的投票页面,post如何写
程序员文章站
2022-05-26 10:09:50
...
请教一个简单的投票页面,post怎么写
以前写过一个简单的投票功能,作用是php post值 如果和数据库内容一致,则count+1 截图如下
$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);
}
?>
现在希望把check.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);
}
?> 的话就完全行不通了 ,实在不懂,请大神帮忙看下改下代码,十分感谢!
再问下,数据库的格式是“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'),才能实现你的功能
------解决思路----------------------
------解决思路----------------------
不一定买书,上网多查查资料啊,主要是mysql相关的知识,你要学习mysql语法,就会了
以前写过一个简单的投票功能,作用是php post值 如果和数据库内容一致,则count+1 截图如下
$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);
}
?>
现在希望把check.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);
}
?> 的话就完全行不通了 ,实在不懂,请大神帮忙看下改下代码,十分感谢!
再问下,数据库的格式是“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");
$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);
}
------解决思路----------------------
不一定买书,上网多查查资料啊,主要是mysql相关的知识,你要学习mysql语法,就会了
相关文章
相关视频
下一篇: Oracle 常见初始化参数