简易在线投票系统(php)——发布投票页面

2024-04-06 13:48

本文主要是介绍简易在线投票系统(php)——发布投票页面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

发布页面是在用户登录的状态下才能进行的所以要先检测是否处在登录状态,确定后再允许发布投票

<center><input type="submit" name="send" value="发布"><li>注意:一旦发布将不能修改!</li></center>

用户输入的信息会以post的格式发布到后台。

<?php
//发布
if(@$_POST['send']){$ouser=@$_GET['user'];if($ouser != ''){$vname=@$_POST[voteName];$time=time();$starttime=date("y-m-d",$time);$vintro=@$_POST[voteIntro];$open=@$_POST[voteOpen];$more=@$_POST[voteSel];$max=@$_POST[itemMax];$min=@$_POST[itemMin];$itemcount=@$_POST[voteCount];//为了方便最后完成字符串,让$item先等于$_POST[1],这样在下面的for循环中要少循环一次$item=@$_POST[1];$num=0;if($max>=$min && $vname!=""){for($i=1;$i<$itemcount;$i++){$j=$i+1;$item=$item.'*'.@$_POST[$j];$num=$num.'*0';}$sql3="SELECT uid FROM users WHERE username='$ouser'";$getVid=mysql_query($sql3);$row=mysql_fetch_row($getVid);$uid=$row[0];$sql="insert into vote(vname,starttime,uid,vintro,open,more,max,min) value('$vname','$starttime','$uid','$vintro','$open','$more','$max','$min')";mysql_query($sql);$sql2="SELECT vid FROM vote WHERE vname='$vname'";$getVid=mysql_query($sql2);$row=mysql_fetch_row($getVid);$vid=$row[0];$sql4="insert into votetitle(vid,itemcount,item,num) value('$vid','$itemcount','$item','$num')";mysql_query($sql4);echo "<script language='javascript'> alert('成功提交!'); </script>";}else{echo "<script language='javascript'> alert('选项设置有误!'); </script>";}}else{echo "<script language='javascript'> alert('请先登录!'); </script>";}
}
?>

1、检测是否登录

    $ouser=@$_GET['user'];if($ouser != ''){
2、获得当前的时间
        $time=time();$starttime=date("y-m-d",$time);
3、形成能够保存在数据库中的选项信息和投票统计信息

   $item=@$_POST[1];$num=0;if($max>=$min && $vname!=""){for($i=1;$i<$itemcount;$i++){$j=$i+1;$item=$item.'*'.@$_POST[$j];$num=$num.'*0';}
(1)选项信息和投票统计信息都是通过将选项信息用“*”隔开的方式,组成一个字符串

范例:“选项一*选项二*选项三”

(2)默认的初始投票统计信息,各项均为0。

范例:“0*0*0”

(3)这个循环语句其实是不必要的,在php中提供了专门的将数组整合和分解为字符串的方法(explode和implode),但在完成这部分代码时我并不清楚这个方法的应用,顾自己完成了这个功能。


这篇关于简易在线投票系统(php)——发布投票页面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/880037

相关文章

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

微信公众号脚本-获取热搜自动新建草稿并发布文章

《微信公众号脚本-获取热搜自动新建草稿并发布文章》本来想写一个自动化发布微信公众号的小绿书的脚本,但是微信公众号官网没有小绿书的接口,那就写一个获取热搜微信普通文章的脚本吧,:本文主要介绍微信公众... 目录介绍思路前期准备环境要求获取接口token获取热搜获取热搜数据下载热搜图片给图片加上标题文字上传图片

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

新特性抢先看! Ubuntu 25.04 Beta 发布:Linux 6.14 内核

《新特性抢先看!Ubuntu25.04Beta发布:Linux6.14内核》Canonical公司近日发布了Ubuntu25.04Beta版,这一版本被赋予了一个活泼的代号——“Plu... Canonical 昨日(3 月 27 日)放出了 Beta 版 Ubuntu 25.04 系统镜像,代号“Pluc

MySQL使用binlog2sql工具实现在线恢复数据功能

《MySQL使用binlog2sql工具实现在线恢复数据功能》binlog2sql是大众点评开源的一款用于解析MySQLbinlog的工具,根据不同选项,可以得到原始SQL、回滚SQL等,下面我们就来... 目录背景目标步骤准备工作恢复数据结果验证结论背景生产数据库执行 SQL 脚本,一般会经过正规的审批

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D