Passwort sicher
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
antwort
anzeigen
befehl
benutzer
code
datei
datenbank
jemand
log
mache
raten
sagen
schwer danke
schwerer jaja
set
tabelle
textdatei
update
url
zahl
-
Moin zusammen
Ich habe eine Seite erstellt wo man einen Code eingeben muss um
den Inhalt zu sehen. Nun will ich das man das Passwort nur 3 Mal eingeben kann.
(Das Passwort weiß nur ich)
Kann mir jemand helfen oder sagen wie ich das machen muss?
Ich will nicht das irgend einer irgendwie immer versucht das Passwort heraus zu finden.
Danke
Lg swissmcs -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Wäre relevant, wie du das genau mit dem Passwort realisiert hast. Über PHP oder mit einer htaccess Datei?
-
Ich habe es über php gemacht
-
Aber wie mache ich das??
Das es die Zahl in der Textdatei um 1 erhöht?
$Irgendwas++;
Geht da ja nicht...
Gibt es irgendein Befehl? z.B.
Add textdatei.txt 1
Beitrag zuletzt geändert: 15.7.2012 14:33:49 von swissminecraftserver -
swissminecraftserver schrieb:
Aber wie mache ich das??
Das es die Zahl in der Textdatei um 1 erhöht?
$Irgendwas++;
Geht da ja nicht...
Gibt es irgendein Befehl? z.B.
Add textdatei.txt 1
Z.B. so:
$datei = fopen("counter.log","r+"); $counterstand = fgets($datei, 10); $counterstand++; rewind($datei); fwrite($datei, $counterstand); fclose($datei);
Beitrag zuletzt geändert: 15.7.2012 14:35:59 von fuhnefreak -
$datei = fopen("counter.log","r+");
$counterstand = fgets($datei, 10);
if($counterstand == "")
{
$counterstand = 0;
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
Nun ist es aber so das das alles auf der gleichen Seite ist.
Muss ich da dann noch etwas ergänzen
$datei = fopen("counter.log","r+");
$counterstand = fgets($datei, 10);
if($counterstand == "3")
{
$counterstand = 0;
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
-
swissminecraftserver schrieb:
$datei = fopen("counter.log","r+");
$counterstand = fgets($datei, 10);
if($counterstand == "3")
{
$counterstand = 0;
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
Dann würde es ja sowie es 3 ist wieder auf 0 gesetzt werden. Dann würde das doch nichts bringen. -
Also muss ich das so machen:
swissminecraftserver schrieb:
$datei = fopen("counter.log","r+");
$counterstand = fgets($datei, 10);
if($counterstand == "3")
{
Mach das diese seite für den Benutzer gesperrt ist?
für 24 h???
}
$counterstand++;
rewind($datei);
fwrite($datei, $counterstand);
fclose($datei);
Ginge das so?
Könnte jemand eine ausführliche Antwort geben?
Wo alles beschrieben ist was ich wo einfügen muss??
Lg swissmcs
Beitrag zuletzt geändert: 15.7.2012 14:47:20 von swissminecraftserver -
Also ich würde es mit der Datenbank lösen, weil ich mir ungern den Zugang zu meiner eigenen Seite sperren lasse
Pseudo:
Cookies würde ich nicht nehmen, da diese einfach vom Benutzer gelöscht werden können...mit Datenbank verbinden $nr = {}; $nr[0] = mysql_request( "SELECT `nr` FROM tabelle WHERE `ip` = " . $_SERVER['REMOTE_ADDR'] ); if (mysql_num_rows($nr[0]) != 1) $nr[0] = 0; else $nr = mysql_fetch_row($nr[0]); if ($nr[0] < 3) { if (passwort == richtig) { mysql_request( "UPDATE tabelle SET `nr` = 0 WHERE `ip` = " . $_SERVER['REMOTE_ADDR'] ); Seite anzeigen! } else { mysql_request( "UPDATE tabelle SET `nr` = " . ($nr[0] + 1) . " WHERE `ip` = " . $_SERVER['REMOTE_ADDR'] ); } } Dateiende!
Beitrag zuletzt geändert: 15.7.2012 16:45:56 von toolz -
Du musst die Ip Speeren oder machs mit Cookies.
Ich empfehle dir das du Cookies benutzt.
SO setzt du den COOKIE
setcookie("Counter", $value, time()+120);
Also hier eine Anleitung für die Arbeit mit Cookies
http://php.net/manual/de/function.setcookie.php
Die Sicherste lösung ist Mysql aber das ist ein wenig schwerer
Beitrag zuletzt geändert: 15.7.2012 16:38:21 von ftools -
Eine 100 prozentig sichere Lösung wirst du da nicht finden.
Alle Lösungen haben da Schwächen.
Cookies kann man löschen bzw garnicht erst zulassen.
Bei der DB kann man die IP einfach durch Neueinwahl resetten.
Ich würde dir aber raten die IP-variante zu wählen. Entweder über eine Datenbank oder über eine externe Datei.
Da würd ich dann die aktuelle Uhrzeit und die IP speichern und dann diese abfragen.
Beispiele wie du dass machst stehen hier ja.
Falls du dabei Hilfe brauchst frag einfach nochmal.
Gruß
PS: mit htaccess hab ich kaum Erfahrung, deshalb kann ich nicht sagen ob es da möglichkeiten gibt, es zu realisieren denke aber mal das es dort die selben Probleme gibt.
Beitrag zuletzt geändert: 17.7.2012 8:43:12 von vctb -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage