Philipp Hasenfratz: kleines prob mit besucherumfrage

Beitrag lesen

Halihallo maria

In meiner selbst programmierten Benutzerumfrage (PHP) kann man leider Gottes immer noch so oft anstimmen wie man will, und somit das ergebnis verfälschen. Auf welche Art und Weise kann ich das verhindern?

Neben den von Alexander vorgeschlagenen Lösungen, wollte ich noch
Cookies anfügen. Bei jedem User der sich bei der Umfrage beteiligt
hat, wird ein Cookie gesetzt (sieh mal in der PHP-Doku unter
set_cookie). Falls dieser bei der Umfrage bereits gesetzt war, wird
der User ausgeschlossen. Wie bei der IP-Sperre, hast du auch hier
absolut keine 100% möglichkeit Missbrauch zu unterbinden. Die
sicherste Möglichkeit ist - wie Alexander bereits sagte - eine
Anmeldung.

Und noch was. Wieso tut dieses Script nur immer zwei Kommentare (über eine Textare mit dem namen $comment) ausgeben, obwohl drei oder mehr drin sein sollten???

keine Ahnung.

Quelltext:

// Inhalt aus Datei holen. Dann mit eingegebenen Text verbinden
$open_comment_r=fopen($path_comment,"r");
   $inhalt_der_datei=fgets($open_comment_r,9999999);
   $inhalt_zusammen = $comment.$inhalt_der_datei;
fclose($open_comment_r);

Was passiert, wenn du mal mehr als 9.9kb Kommentare hast?

// Inhalt der Datei löschen, in dem man mit "" überschreibt
$open_comment_l=fopen($path_comment,"w+");
   fwrite($open_comment_l, "");
fclose($open_comment_l);

Schrecklich! - Lies bei PHP schnell nach, was der Modus "w+" macht
und sage dann, warum dieser ganze Block *nicht* nötig ist.

// Daten in die Datei schreiben
$open_comment_w=fopen($path_comment,"a");
   fputs($open_comment_w,$inhalt_zusammen);
fclose($open_comment_w);

Öffne die Datei einfach mit "w+"!

require("db/comments.txt");

Schrecklich! Was meinst du was ein <? /* böser Code */ ?> in einem
Kommentar für Konsequenzen hat, wenn du mal aus versehen strip_tags
nicht mehr im Script stehen hast? - Lies die Datei um Himmels Willen
über Dateioperationen ein und gib den Inhalt über echo aus. Verwende
require *ausschliesslich nur genau dann*, wenn du dem Inhalt der
inkludierten Datei 100% vertrauen kannst!

Viele Grüsse

Philipp