Du hast doch schon eine Funktion, die überprüft, ob der Benutzername schon in der Datei steht, die kannst du doch analog auch dafür benutzen
Anmeldescript
Einklappen
X
-
Wenn du das analog zu den Benutzernamen machst, hast du ja alle Codes in einem Array.
Dann könntest du doch eigentlich die Codes-Datei leeren und alle Codes bis auf den benutzten wieder reinschreibenWahrheit ist unser kostbarster Besitz. Lasst uns sparsam mit ihr umgehen. Mark Twain
Kommentar
-
Vielen Dank für den Tipp wahsaga aber ich weiß nicht wie. Aus einem Buch lernen funktioniert bei mir nicht so richtig. Verliere dann immer schnell die lust. (VB, java)
Aber ich habe mich mal ran gesetzt und versucht aus dem was ich verstehe was zu basteln. Ist wahrscheinlich alles falsch, aber vielleicht könnt ihr mir ja helfen
PHP-Code:$password2 = array();
$codedatei = fopen ("codes.txt","r");
while (!feof($codedatei))
{
$zeile = fgets($userdatei,100);
array_push ($zeile)
}
fclose ($codedatei);
if (in_array($password2))
{
Jetzt bekomme ich die Fehlermeldung:
"Parse error: parse error, unexpected '}' in /cdcv2/www/AbraZebra/html/pgot/anmelden.php on line 8"
Kommentar
-
Das Manual auf www.php.net hilft immer gerne, wenn man nicht weiß, wie man mit einigen Funktionen umgehen muss, würde ich dir hier empfehlen, und die Variablenbezeichner passen auch nicht immer..
Was ist denn bei dir Zeile 8?Wahrheit ist unser kostbarster Besitz. Lasst uns sparsam mit ihr umgehen. Mark Twain
Kommentar
-
ok, den fehler habe ich beseitigt. ich habe ein ; hinter
PHP-Code:array_push ($zeile)
Auf jeden Fall kommen jetzt diese Fehler:
"Warning: fgets(): supplied argument is not a valid stream resource in /cdcv2/www/AbraZebra/html/pgot/anmelden.php on line 6
Warning: Wrong parameter count for array_push() in /cdcv2/www/AbraZebra/html/pgot/anmelden.php on line 7"
Kommentar
-
PHP-Code:$password2 = array();
$codedatei = fopen ("codes.txt","r");
while (!feof($codedatei))
{
$zeile = fgets($userdatei,100);
array_push ($zeile)
}
fclose ($codedatei);
if (in_array($password2))
{
und Warning: fgets(): supplied argument is not a valid stream resource in /cdcv2/www/AbraZebra/html/pgot/anmelden.php on line 6
bedeutet dass Du die funktion fgets falsch parametrisierst. denn,
$codedatei = fopen ("codes.txt","r"); erzeugt einen filepointer und wo bitte verwendest Du den?
kannst du mir das schreiben? Ist doch nur eine kleine Sache, oder?Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Kommentar
-
sehr pädagogisch, es mir nicht einfach abzunehmen!
Original geschrieben von MelloPie
$codedatei = fopen ("codes.txt","r"); erzeugt einen filepointer und wo bitte verwendest Du den?
Ich habe das ganze aber ohne Fehler zum laufen gebracht. Nur kommt leider immer der Hinweis, das der code ungültig ist (so wie ich es programmiert habe, wenn der code ungültig ist.), auch wenn er eigendlich in der Datei steht.
Jetzt habe ich es einfach mal umgeschrieben, damit ich sehen kann, was er in das Array schreibt:
PHP-Code:<?
$codes = array();
$codedatei = fopen ("codes.txt","r");
while (!feof($codedatei))
{
$zeile = fgets($codedatei,100);
array_push($codes,$zeile[0]);
}
fclose($codedatei);
echo ($codes);
?>
"Array"
Warum schreibt er mir denn nur immer Array statt dem Inhalt der Zeile?
Der Inhalt der codes.txt:
haus
tim
blauZuletzt geändert von comtim; 22.12.2005, 17:23.
Kommentar
-
Danke, wieder einen Schritt weiter.
Jetzt habe ich herausgefunden, dass immer nur der letzte code akzeptiert wird. Wie kommt das? Es werden doch alle in das array geschrieben (wird auch angezeigt).
PHP-Code:<?
$codes = array();
$codedatei = fopen ("codes.txt","r");
while (!feof($codedatei))
{
$zeile = fgets($codedatei,100);
array_push($codes,$zeile);
}
fclose($codedatei);
if (in_array($regcode,$codes))
{
echo "REG_CODE ZUGELASSEN";
}
else
{
echo "REG_CODE FALSCH";
}
?>
Kommentar
Kommentar