У меня проблема с несколькими формами на одной странице. В индекс страницы я включаю 4 формыболее одной формы на одной странице
include('./poll_1a.php');
include('./poll_2a.php');
include('./poll_3a.php');
include('./poll_4a.php');
Код формы на каждой странице опроса тот же. Я включаю некоторые уникальные маркеры ($ poll_code) для каждого скрипта, но эффект заключается в том, что я использую одну форму - передаваемая переменная принимается в других. Но я хотел бы работать в каждой форме по отдельности.
переменная $ poll_code является уникальным для каждого сценария -> 1 для poll_1, 2 для poll_2 и т.д. Та же ситуация с $ cookie_name
$cookie_name = "poll_cookie_".$poll_code;
чем, как я вижу, печенье имеют разные названия.
$poll_code = "1"; // or 2, 3, 4
?>
<p>
<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" name="<?php echo $poll_code; ?>">
<input type="hidden" name="poll_cookie_<?php echo $poll_code; ?>" value="<?php echo $poll_code; ?>">
<table>
<?php
//print possible answers
for($i=0;$i<count($answers);$i++){
?><tr><td style="\text-allign: left;\"><input type="radio" name="vote_<?php echo $poll_code; ?>" value="<?php echo $i; ?>"> <?php echo $answers[$i]; ?></td></tr><?php
}
echo "</table>";
echo "<br>";
if ($_COOKIE["$cookie_name"] == $poll_code) {
echo "<br> nie można głosować ponownie ...";
} else {
?>
<p><input type="submit" name="submit_<?php echo $poll_code; ?>" value="głosuj !" onClick="this.disabled = 'true';"></p>
<?php
}
?>
</form>
</p>
В: Как заставить эти формы работать индивидуально на одной странице?
// ------------------- EDIT
получающая часть сценария
$votes = file($file);
$total = 0;
$totale = 0;
$poll_cookie = 0;
if (isset($_POST["vote_$poll_code"]) && isset($_POST["poll_cookie_$poll_code"])) {
$vote = $_POST["vote_$poll_code"];
$poll_cookie = $_POST["poll_cookie_$poll_code"];
}
//submit vote
if(isset($vote)){
$votes[$vote] = $votes[$vote]+1;
}
//write votes
$handle = fopen($file,"w");
foreach($votes as $v){
$total += $v;
fputs($handle,chop($v)."\n");
}
fclose($handle);
Конечно, $ файл есть уникальная декларация (наверху скрипта, в соответствии с объявлением $ poll_code).
$file = "poll_".$poll_code.".txt";
Что это значит для «форм для работы индивидуально на одной странице "? –
Эти формы - опросы - я хочу, чтобы пользователь голосовал за каждый опрос отдельно и не один раз во всем :) – Andrew
Я до сих пор абсолютно не знаю, что вы пытаетесь спросить. –