我正在制作在线投票系统。该系统对可投票的人(区域人口)有限制(例如10)&然后他们的投票添加到数据库。我想从数据库中的单选按钮插入值。我尝试了一些代码。但它有一些错误。投票表格数据不会插入DB&我不知道这是非常合适的代码。如果有人有想法,请告诉我。感谢您
<html>
<head>
<title>Election</title>
<link rel="stylesheet" href="bootstrap-3.3.4-dist/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="css/presidential.css" type="text/css">
<link rel="stylesheet" href="css/login.css" type="text/css">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css">
</head>
<body>
<div class="head">
<div class="container-fluid">
<div class="navbar-header">
<b> Online voting System </b>
</div>
<input type="submit" class="btn btn-primary nextBtn btn-lg pull-right" name="submit" value="Cast Your Vote" />
</div>
</div>
<div class="container">
<form name="vote" method="POST" action="">
<div class="one">
<h2><b>Election</b></h2>
<br>
<div class="funkyradio">
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio1" value="radio1" />
<label for="radio1"><b>A Party</b> <div class="img"><img src="img\A.png" height="75.8em" width="50.3em" ></img> </div> </label>
</div>
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio2" value="radio2" />
<label for="radio2"><b>B Party</b><div class="img"><img src="img\B.jpg" height="75.8em" width="50.3em" ></img> </div></label>
</div>
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio3" />
<label for="radio3"><b>C Party</b><div class="img"><img src="img\C.jpg" height="75.8em" width="50.3em" ></img> </div></label>
</div>
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio4" />
<label for="radio4"><b>D Party</b><div class="img"><img src="img\D.jpg" height="75.8em" width="50.3em" ></img> </div></label>
</div>
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio5" />
<label for="radio5"><b>E Party</b><div class="img"><img src="img\E.jpg" height="75.8em" width="50.3em" ></img> </div></label>
</div>
<div class="funkyradio-default">
<input type="radio" name="radio" id="radio6" />
<label for="radio6"><b> F Party</b><div class="img"><img src="img\F.jpg" height="75.8em" width="50.3em" ></img> </div></label>
</div>
</div>
</div>
</form>
</div>
</body>
</html>
<?php
require'database.php';
if (isset($_POST['submit']))
{$radio=$_POST['radio'];
if($radio!="")
{
$query=mysql_query("INSERT INTO `election`(`candidate_name`) VALUES ('$radio')");
if ($query)
{
echo"Cast your vote successfully";
}
else
{
echo"There is a Some Problem in database";
}
}
}
?>
答案 0 :(得分:0)
您的查询无法正常工作,因为您在字符串中调用变量。您应该首先关闭字符串,然后调用您的变量,然后再次以字符串结束查询。
像这样的东西
VALUES ('" . $radio . "');"
在查询中使用单引号,然后关闭查询并放入一些php代码,然后再次使用double quoutes打开字符串。在该字符串中,您完成查询。
查看sql注入,因为如果使用此方法,您将非常容易受到攻击。但这是另一个问题。
答案 1 :(得分:0)
这是一个小例子:
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
echo "<pre>";
var_dump($_POST);
exit;
}
?>
<form action="<?= $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="radio" name="radiobutton" value="boom" />
<input type="radio" name="radiobutton" value="bam" />
<input type="radio" name="radiobuttontoo" value="boom" />
<button type="submit">Go</button>
</form>
在上面的示例中,您可以POST两个单选按钮。 radiobutton
和radiobuttontoo
。对于radiobutton
,它取决于两者中的哪一个被选中。将提交所选项的值。现在,要将其转换为mysql,只需执行INSERT
。
$stmt = "INSERT INTO table SET
value='".$_POST['radiobutton']."'
";
真的没有什么了。