你好任何一個人都可以推薦我一個很好的功能,或者建議如何給候選人增加一個額外的積分並得到更多的選票?求和部分似乎工作正常,但在迴應最終結果時,我希望它包含一個額外的點。謝謝! 任務:五位候選人的php投票和打印總票數
您的任務是編寫一個包含五名候選人的選舉申請表,其中只有一名候選人可以一次投票。將鑄造的投票保存到文件results.txt中。該文件中有五行。每行都有候選人選舉號碼(1-5)並獲得投票。選舉號碼和收到的選票用|分隔字符。因此,文件結構如下所示:
1|2
2|6
3|8
4|3
5|10
你的任務是寫一個PHP腳本,以便投票候選人獲得一個額外的投票表決後,改變RESULTS.TXT。該計劃應打印包括最新投票在內的已投票總數。所使用的形式如下:
<form action="voting.php" method="get">
Choose your candidate:
<select name="candidate">
<option value=1 selected>1</option>
<option value=2>2</option>
<option value=3>3</option>
<option value=4>4</option>
<option value=5>5</option>
</select>
<br>
<input type="submit" value="Send">
</form>
Example output
Total votes casted: 12 votes.
代碼:
<?php
$inputs = file('results.txt');
$sum = 0 ;
$res = array();
foreach ($inputs as $line) {
$var = explode('|', $line);
$res[$var[0]] = $var[1];
$add= $add + $var[1];
}
$fin=array();
$maxVotes=max($res);
foreach ($res as $candidate => $voteCount) {
if ($voteCount == $maxVotes) {
$fin=$candidate . "|" . $res[$candidate];
$res[$candidate]++;
}
}
$final = implode("\n", $fin);
$fp = fopen('results.txt', 'w');
fwrite($fp, $final);
fclose($fp);
echo "Total votes casted: ",$add+1," votes.";
$file = 'results.txt';
readfile($file);
?>
這是你的功課 – mesutozer
不,這是一個自我學習試圖提高我在PHP中的知識我是新來的PHP我已經嘗試了所有我最好的花費時間來打印額外的一點,但不能拿出一個好的功能或方式 – user3358884
好吧,我相信你,請找到我的回答低於 – mesutozer