ホームページ > バックエンド開発 > PHPチュートリアル > php+mysql+xml(コード)で実装したアンケート

php+mysql+xml(コード)で実装したアンケート

不言
リリース: 2023-04-04 09:48:02
転載
4152 人が閲覧しました

この記事の内容は、php mysql xmlの実装に関するアンケート調査(コード)であり、一定の参考価値がありますので、困っている方は参考にしていただければ幸いです。

私は、書籍「PHP の典型的なモジュールとプロジェクトの実践」に基づいてアンケートに回答しました。同時に、管理者はアンケートの内容を変更できます。

同時に、CSS ファイルが使用されました。これは、

http://www.wufangbo.com/p-css-vote/

から借用したもので、5 つの PHP ファイルが必要です: admin.php、update.php、view.php、result .php, vote.php ,

まず、WWW の下に新しいフォルダーを作成します。ここでは、「diaocha」という名前を付けます。私のポート番号は 8080です。

データベースは次のとおりです。ライブラリは cms_vote で、テーブルの名前は次のとおりです:vote


Votenote 内のコンテンツは次のとおりです:

<movies>
<movie>
<title>您想去哪个城市:</title>
<id>1</id>
<count>350</count>
<content>广东</content>
</movie>
<movie>
<title>您想去哪个城市:</title>
<id>2</id>
<count>47</count>
<content>湖南</content>
</movie>
<movie>
<title>您想去哪个城市:</title>
<id>3</id>
<count>118</count>
<content>上海</content>
</movie>
<movie>
<title>您想去哪个城市:</title>
<id>4</id>
<count>122</count>
<content>北京</content>
</movie>
<movie>
<title>您想去哪个城市:</title>
<id>5</id>
<count>80</count>
<content>湖北</content>
</movie>
</movies>
ログイン後にコピー

1 、admin.php

<?php
$con = mysql_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;)or die("could not connect database");//此处根据自己的数据库的名字,密码进行修改
mysql_query("set names utf8");
mysql_select_db(&#39;cms_vote&#39;)or die("could not select database");
$aid = $_GET[&#39;aid&#39;];
if(!empty($aid)){
$sql=&#39;SELECT *FROM vote &#39;;
//WHERE aid=".$aid."&#39;;
$result = mysql_query($sql,$con);
$row = mysql_fetch_array($result);
}
else{
echo &#39;<script>alert(\&#39;调查异常\&#39;);</script>&#39;;
exit;
}
?>
ログイン後にコピー


调查管理
调查项目:
调查总人数:
开始时间:
结束时间:
投票项:
ログイン後にコピー


2、update.php

<?php
$con = mysql_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;)or die("could not connect database");//此处根据自己的数据库的名字,密码进行修改
mysql_query("set names utf8");
mysql_select_db(&#39;cms_vote&#39;)or die("could not select database");
$aid = $_POST[&#39;aid&#39;];
$votename=$_POST[&#39;votename&#39;];
$starttime=$_POST[&#39;starttime&#39;];
$endtime=$_POST[&#39;endtime&#39;];
$votenote=$_POST[&#39;votenote&#39;];
$totalcount=$_POST[&#39;totalcount&#39;];
if(!empty($aid))
{
$sql = "UPDATE  vote SET Votename= &#39;".$votename."&#39;, 
Starttime=&#39;".$starttime."&#39;, Endtime=&#39;".$endtime."&#39;, 
Totalcount=&#39;".$totalcount."&#39;, Votenote=&#39;".$votenote."&#39; WHERE 
aid=&#39;".$aid."&#39;order by aid desc limit 1;";
$result = mysql_query($sql);
if(!empty($result)){
echo &#39;<script>alert(\&#39;数据保存成功\&#39;);</script>&#39;;
echo "您的调查问卷已生效!";
}
else
{
echo &#39;<script>alert(\&#39;数据保存失败\&#39;);</script>&#39;;
exit();
}
}
else{
echo &#39;<script>alert(\&#39;调查异常\&#39;);</script>&#39;;
exit();
}
?>
ログイン後にコピー

検証は成功しました: http ://localhost:8080/diaocha/admin.php? aid=1

(?aod=1 を追加する必要があることに注意してください) 形式は英語形式です

#アンケート データの保存ボタンを押すと、 # が表示されます

##アンケートが有効になったことが表示されます

3、表示します。 php

<?php
$voteitem = $_POST[&#39;voteitem&#39;];
$con = mysql_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;)or die("could not connect database");//密码用户名按照自己的修改
mysql_query("set names utf8");
mysql_select_db(&#39;cms_vote&#39;)or die("could not select database");
$sql="SELECT *FROM vote";
$result = mysql_query($sql,$con);
$arr = mysql_fetch_array($result);
$xmlstr = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
$xmlstr.=$arr[&#39;Votenote&#39;];
$xml = simplexml_load_string($xmlstr);
$b[]=Array();
$a[]=Array();
for($i=0;$i<5;$i++){
$b[$i]=$xml->movie[$i]->count;
$a[$i]=$xml->movie[$i]->count+1;
}
for($i=0;$i<5;$i++){
$b[$i]=$a[$i];
$xmlstra[$i]="<movies>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>1</id>
<count>".$b[0]."</count>
<content>". $xml->movie[0]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>2</id>
<count>".$b[1]."</count>
<content>". $xml->movie[1]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>3</id>
<count>".$b[2]."</count>
<content>". $xml->movie[2]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>4</id>
<count>".$b[3]."</count>
<content>". $xml->movie[3]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>4</id>
<count>".$b[4]."</count>
<content>". $xml->movie[4]->content ."</content>
</movie>
</movies>";
}
if($voteitem!=null){
$sql = "UPDATE  vote SET Totalcount=Totalcount+1,Votenote=&#39;".$xmlstra[$voteitem]."&#39; order by aid desc limit 1";
$result = mysql_query($sql);
$url = &#39;result.php?aid=1&#39;;
switch($voteitem){
case 0:
{
if(!empty($result)){
echo &#39;<script>alert("投票1成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 1:
{
if(!empty($result)){
echo &#39;<script>alert("投票2成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 2:
{
if(!empty($result)){
echo &#39;<script>alert("投票3成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 3:
{
if(!empty($result)){
echo &#39;<script>alert("投票4成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 4:
{
if(!empty($result)){
echo &#39;<script>alert("投票5成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
}
}
else{
echo &#39;<script>window.close();</script>&#39;; 
}
?>
ログイン後にコピー

次の結果が表示されます

4.vote.php

<?php
$voteitem = $_POST[&#39;voteitem&#39;];
$con = mysql_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;)or die("could not connect database");
mysql_query("set names utf8");
mysql_select_db(&#39;cms_vote&#39;)or die("could not select database");
$sql="SELECT *FROM vote";
$result = mysql_query($sql,$con);
$arr = mysql_fetch_array($result);
$xmlstr = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
$xmlstr.=$arr[&#39;Votenote&#39;];
$xml = simplexml_load_string($xmlstr);
$b[]=Array();
$a[]=Array();
for($i=0;$i<5;$i++){
$b[$i]=$xml->movie[$i]->count;
$a[$i]=$xml->movie[$i]->count+1;
}
for($i=0;$i<5;$i++){
$b[$i]=$a[$i];
$xmlstra[$i]="<movies>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>1</id>
<count>".$b[0]."</count>
<content>". $xml->movie[0]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>2</id>
<count>".$b[1]."</count>
<content>". $xml->movie[1]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>3</id>
<count>".$b[2]."</count>
<content>". $xml->movie[2]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>4</id>
<count>".$b[3]."</count>
<content>". $xml->movie[3]->content ."</content>
</movie>
<movie>
<title>". $xml->movie[0]->title ."</title>
<id>4</id>
<count>".$b[4]."</count>
<content>". $xml->movie[4]->content ."</content>
</movie>
</movies>";
}
if($voteitem!=null){
$sql = "UPDATE  vote SET Totalcount=Totalcount+1,Votenote=&#39;".$xmlstra[$voteitem]."&#39; order by aid desc limit 1";
$result = mysql_query($sql);
$url = &#39;result.php?aid=1&#39;;
switch($voteitem){
case 0:
{
if(!empty($result)){
echo &#39;<script>alert("投票1成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 1:
{
if(!empty($result)){
echo &#39;<script>alert("投票2成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 2:
{
if(!empty($result)){
echo &#39;<script>alert("投票3成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 3:
{
if(!empty($result)){
echo &#39;<script>alert("投票4成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
case 4:
{
if(!empty($result)){
echo &#39;<script>alert("投票5成功!");location.href="&#39;.$url.&#39;"</script>&#39;;
exit();
}
break;
}
}
}
else{
echo &#39;<script>window.close();</script>&#39;; 
}
?>
ログイン後にコピー

5.result。 php
<?php
$con = mysql_connect(&#39;localhost&#39;,&#39;root&#39;,&#39;root&#39;)or die("could not connect database");
mysql_query("set names utf8");
mysql_select_db(&#39;cms_vote&#39;)or die("could not select database");
$aid = $_GET[&#39;aid&#39;];
if(!empty($aid)){
$sql="SELECT *FROM vote WHERE aid=&#39;".$aid."&#39;";
$result = mysql_query($sql,$con);
$arr = mysql_fetch_array($result);
$xmlstr = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
$xmlstr.=$arr[&#39;Votenote&#39;];
$xml = simplexml_load_string($xmlstr);
$n0=$xml->movie[0]->count/$arr[&#39;Totalcount&#39;];
$n1=$xml->movie[1]->count/$arr[&#39;Totalcount&#39;];
$n2=$xml->movie[2]->count/$arr[&#39;Totalcount&#39;];
$n3=$xml->movie[3]->count/$arr[&#39;Totalcount&#39;];
$n4=$xml->movie[4]->count/$arr[&#39;Totalcount&#39;];
}
/*else
{
echo &#39;<script>alert(\&#39;调查异常\&#39;);</script>&#39;;
exit;
}*/
?>
ログイン後にコピー
rreeee

以上がphp+mysql+xml(コード)で実装したアンケートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:cnblogs.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート