Reloadsperre
P@t
- php
0 Tom0 P@t
0 Thomas Luethi0 P@t0 Thomas Luethi0 Tom
Hallo allerseits!
Ich möchte in meinem Script folgende Reloadsperre (siehe Quellcode) einbauen. Ist die IP vorhanden, läuft alles einwandfrei. Das Prog bricht ab, mit dem entsprechenden Hinweis.
Ist die IP aber nicht vorhanden, dann zeigt es mir nur mein probeweise eingefügtes "echo $data" an und baut den Rest des Scripts nicht mehr auf. Woran kann das liegen?
Herzliche Grüße
P@t
Quellcode:
if(file_exists($datfile))
{
$fp=fopen("$datfile", "r");
while($fp!=EOF)
{
$data=fgets($fp, 256);
echo "$data"; // Testausgabe
if(eregi($REMOTE_ADDR, $data))
{
print "<p>Du hast dich bereits an dieser Aktion beteiligt!</p>";
print "<p>Vielen Dank!</p>";
print "<p><a href=index.php>[Zurück]</a></p>";
exit();
}
}
fclose($fp);
}
Hallo Pat,
ich sag: Endlosschleife!
Schau Dir mal Deine Schleifenbedingung an.
while($fp!=EOF)
Ich würde schreiben: while(!feof($fp))
Grüße
Tom
Hi Tom!
ich sag: Endlosschleife!
Das war's! Super und vielen Dank!
Herzlichen Gruß
P@t
Hallo,
Ich möchte in meinem Script folgende Reloadsperre (siehe Quellcode) einbauen. Ist die IP vorhanden, läuft alles einwandfrei. Das Prog bricht ab, mit dem entsprechenden Hinweis.
Ist die IP aber nicht vorhanden, dann zeigt es mir nur mein probeweise eingefügtes "echo $data" an und baut den Rest des Scripts nicht mehr auf. Woran kann das liegen?
Du hast gar keinen ELSE-Zweig.
Zudem ist es IMHO sehr, sehr dumm, die IP-Adresse als Ausschlusskriterium zu nehmen.
Stichwort: Proxy-Server.
Lies auch mal:
Wie kann ich eine schummelsichere Abstimmung codieren?
http://www.dclp-faq.de/q/q-scripte-abstimmung.html
Gruesse,
Thomas
Hallo Thomas,
Du hast gar keinen ELSE-Zweig.
Den brauche ich in meinem Fall auch nicht.
Zudem ist es IMHO sehr, sehr dumm, die IP-Adresse als Ausschlusskriterium zu nehmen.
Stichwort: Proxy-Server.
Bleibt beim Proxy-Server, die IP-Adresse stehen?
Lies auch mal:
Wie kann ich eine schummelsichere Abstimmung codieren?
http://www.dclp-faq.de/q/q-scripte-abstimmung.html
Ich habe in meinem Fall die IP-Adresse fest im Abstimmungsergebnis mit integriert. D.h. dies müsste doch ziemlich sicher sein.
HG P@t
Hallo,
Zudem ist es IMHO sehr, sehr dumm, die IP-Adresse als Ausschlusskriterium zu nehmen.
Stichwort: Proxy-Server.
Bleibt beim Proxy-Server, die IP-Adresse stehen?
Ein Proxy-Server hat nur eine IP-Adresse.
"Dahinter" koennen aber hunderte, ja tausende von Einzelpersonen sitzen,
die andere IP-Adressen haben.
Der Webserver sieht nur die IP-Adresse des Proxys.
Ich habe in meinem Fall die IP-Adresse fest im Abstimmungsergebnis mit integriert. D.h. dies müsste doch ziemlich sicher sein.
Ja, es ist ziemlich "sicher" in der Wirkung, dass z.B. von allen x-tausend T-Online-Kunden,
die den T-Online-Proxy benutzen, nur ein einziger abstimmen darf.
Alle anderen kriegen dann freundlicherweise die Meldung "Sie haben bereits abgestimmt"...
Wie ich bereits sagte und wie auch in der dclp-FAQ steht:
Es ist schlecht, die IP-Adresse als Sperr-Merkmal zu nehmen.
Gruesse,
Thomas
Hallo,
Ja, es ist ziemlich "sicher" in der Wirkung, dass z.B. von allen x-tausend T-Online-Kunden,
die den T-Online-Proxy benutzen, nur ein einziger abstimmen darf.
Laufen denn die T-Online-Zugänge über einen Proxy? Ich dachte, die vergeben dynamisch IPs? Und zwar eine pro Session.
Ein anderes Problem sehe ich da eher bei AOL-Kunden. Die vergeben bei jedem Request eine andere IP aus dem Pool des Netzes.
Also kann es passieren, dass eine Seite unter einer IP aufgerufen wird, die Bilder für die Seite aber bereits jedes unter einer anderen.
Absolute Sicherheit gibts nicht. Du könntest nach der Personalausweisnummer fragen. Die hat Plausibilitätskontrollen. Oder du könntest den Abstimmer bitten, sich einen Voucher per eMail schicken zu lassen. Die email mit dem Voucher-Code merkst Du Dir dann in einer DB. Was ist aber, wenn einer 20 eMail-Adressen hat und die auch nutzt?
usw. usw.
Grüße
Tom
Hallo,
Ja, es ist ziemlich "sicher" in der Wirkung, dass z.B. von allen x-tausend T-Online-Kunden,
die den T-Online-Proxy benutzen, nur ein einziger abstimmen darf.
Laufen denn die T-Online-Zugänge über einen Proxy? Ich dachte, die vergeben dynamisch IPs? Und zwar eine pro Session.
Ich kenne T-Online nicht, und ich habe das bloss als Beispiel genannt,
damit P@t vielleicht endlich einsieht, dass sein Vorhaben nicht gerade schlau ist.
Ich vermute einfach mal, dass T-Online einen Proxy hat, den
die Kunden einstellen koennen, wenn sie wollen.
(Kurz nachgeschaut: es ist so. Unter
http://www3.service.t-online.de/c/06/51/16/651168.html
nennen Sie als Proxyserver für WWW/HTTP: www-proxy.t-online.de
Die Verwendung ist vermutlich freiwillig/empfohlen.)
Gewisse Zugangs-Provider haben auch einen Zwangs-Proxy,
der "transparent" zwischen den User und das Web gehaengt wird.
Und in den meisten grossen Firmen sitzen alle Benutzer hinter dem Proxy.
Gruesse,
Thomas