Eine schöne Woche erstmal ;-)
Naja so ganz "aneinander vorbei" wars ja nicht ;-) Ist ja schon was bei rausgekommen ...
Ich muss zugeben, dass ich da bissl blueäugig rangegangen bin und gedacht habe, dass man meine "Wünsche" unabhängig (vom eigentlichen Script) realisieren kann, aber du hast mich durchschaut;-) nee mal im Ernst: Du hast natürlich Recht, dass es darum geht den User daran zu hindern mehrere Stimmen abzugeben und den anhand der IP oder cookie zu identifizieren - daher sollte der Button natürlich für eine Zeit gesperrt sein. Also das ganze ist ja so, dass es dafür ja im Hintergrund schon ein PHP-Code gibt, der die Values und IP's ausliest - variable in der config.inc:
PHP:
$tab_pip =$tabpref."user_ip"; //Letzte IP / Vote
, die in die DB eingetragen wird. Der PHP- Abschnitt des Votingscript und "unseren " bisherigen Änderungen am Formular sieht per PHP so aus: ;-)
PHP:
if ($pfpoll["$cookiename-$poll[id]"] != 1) {
echo "<table border=\"0\" cellpadding=\"0\" cellspacing=\"2\" width=\"$pollbreite\">
<form name=\"umfrage\" action=\"$ppollurl/vote.php?id=$poll[id]\" method=post target=\"$ptoframe\" onSubmit=\"document.umfrage.submit.disabled = true; return true;\">
<input type=hidden name=redirect value=\"$PHP_SELF\">
<tr><td class=\"infomini\" colspan=\"2\">$poll[frage]</td></tr>";
$sqlbefehl= "Select * FROM $tab_pdata where pollid=$poll[id] order by auswahl";
$getoptions = mysql_query($sqlbefehl, $serverid);
while ($options= mysql_fetch_array($getoptions)) {
if ($tdclass == "odd") { $tdclass="even"; }
else { $tdclass="odd"; }
echo "<tr><td class=\"$tdclass\"><input type=radio name=option value=\"$options[id]\" onclick=\"enable()\"></td><td class=\"$tdclass\">$options[auswahl]</td></tr>";
}
echo "<tr><td class=\"abstimmen\" colspan=\"2\" align=\"center\"><input style='font-size:9px' type=\"submit\" name=\"submit\" value=\"Stimme abgeben\" disabled=\"disabled\"></td></tr></form></table>";
}
else .... Ergebnisse ....
In der Standard-Scriptfassung ist diese Klicksperre nur mit einem labidaren TextHinweis im Targetframe ( "du hast schon gevotet...") gelöst, was mir eben zu simple ist ...
Man möchte ja immer irgendwie das etwas andere Formular, daher fiel mir das noch mit der Labeländerung ein ...
Sorry, wenn ich da gedacht habe, dass es einfacher geht - ich wollte es ja nicht unbedingt schwieriger machen, dachte ich als Scriptdummy zumindest ...
Gruß RMD
Anmerkung: mir fällt hier im Forum immer wieder sehr unangenehm auf, dass ich trotz 1024x768 Px beim Lesen und schreiben von Posts fast die Hälfte zusätzlich horizontal scrollen muss, das nervt wahnsinnig, woran liegt das?