cjackson
Goto Top

Umfrage letzte IP sperren

Möchte nicht nur das der letzte gesperrt wird sondern möchte, das jede Ip gesperrt wird, die schon gevotet hat und das eine Fehlermeldung kommt "Sie haben bereits ihr vote abgegeben". Kann mir jemand helfen?

<?
$varia=file("fragen.txt");  
$frage=array_pop($varia);
echo "$frage";  
echo "<form action=\"{$_SERVER['PHP_SELF']}\" method=\"post\">";  
$i=0;
while(isset($varia[$i])) {
$j=$i+1;
echo "<input type=\"radio\" name=\"ant\" value=\"$j\">$varia[$i]<br>";  
$i++;
}
echo "<input type=\"submit\" value=\"abstimmen\">";  
echo "</form>";  
$z=file("antworten.txt");  
$ant = isset($_POST['ant']) ? $_POST['ant'] : "";  
if ($ant!='') {  
$lvote=fopen("lastip.txt","r");  
$lv=fgets($lvote,255);
fclose($lvote);
$ip = getenv ("REMOTE_ADDR");  
if ($lv!=$ip) {
$z[$ant-1]=$z[$ant-1]+1;
$datei=fopen("antworten.txt","w");  
foreach ($z as $save) {fputs($datei,chop($save)."\n");}  
fclose($datei);
$lvote=fopen("lastip.txt","w");  
fputs($lvote,"$ip");  
fclose($lvote);
}
}
$laenge=90;
$gesamt=0;
foreach($z as $zahl)
{ $gesamt=$gesamt+$zahl; }
$proz=array();
foreach ($z as $zahl) {
if ($gesamt!=0) {
$p=round($zahl/$gesamt*10000)/100;
array_push($proz,$p);
}
}
$max=1;
foreach ($z as $zahl) {
$zahl=$zahl*10/10;
if($zahl > $max) { $max=$zahl; }
}
$breite=array();
foreach ($z as $zahl)
{
$b=$zahl*$laenge/$max;
array_push($breite,$b);
}
$i=0;
while (isset($z[$i]))
{
echo "$varia[$i]<br>";  
echo "<img src=\"balken_blau.gif\" border=\"0\" width=\"$breite[$i]\" height=\"12\" alt=\"$z[$i] Stimmen\">";  
$x=$laenge-$breite[$i];
echo "<img src=\"balken_grau.gif\" border=\"0\" width=\"$x\" height=\"12\" alt=\"$z[$i] Stimmen\">";  
echo "$proz[$i]%";  
echo "<br>";  
$i++;
}
echo "<br>Stimmen: $gesamt (100%)";  
?>
Bitte um Hilfe würde gerne alle IP´s sperren die je gevotet haben also die datei "lastip.txt" nicht überschreiben sondern anfügen (append), weiss leider nicht wie ich das machen soll.
Danke schon einmal Jackson

Content-ID: 67750

Url: https://administrator.de/contentid/67750

Ausgedruckt am: 26.11.2024 um 09:11 Uhr

Spao
Spao 03.09.2007 um 15:14:45 Uhr
Goto Top
CJackson
CJackson 03.09.2007 um 15:32:30 Uhr
Goto Top
Thx Spao also das am Ende einfügen klappt. Aber es sollte nun jede Ip überprüfen sodass wirklich nur jede ip einmal voten darf und im Moment schreibt es mit halt 10 mal meine Ip untereinander.

Wenn du mir dabei auch noch helfen könntest wäre es genial.

jackson
Spao
Spao 04.09.2007 um 07:01:56 Uhr
Goto Top
<?PHP
$ipadress = file ("ipadressen.txt";);  
$use_ip = false;

for ($x=0;$x<count($ipadress); $x++)
   if($ipadress[$x] == $aktuell_ip) $use_ip = true;

if($use_ip){
 echo "Sie drüfen nicht voten!";  
}else{
 echo "Sie drüfen voten!";  
}

?>
CJackson
CJackson 04.09.2007 um 08:05:32 Uhr
Goto Top
könntest du mir evtl. das ganze auch noch in mein bestehendes einbauen?