• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Kleines problem

Drakar

New member
Hi erstmal
Also folgendes problem man kann sich eintragen im newsletter mit Passwort und Email beim eintrag prüft er ob passwort und email schon vorhanden ist usw das klappt ja auch nur wenn man dann sich wieder austragen will klappt das nicht so ganz.
Mein problem ist es das er entweder beides raus nimmt wenn es über einstimmt aber auch nur einzelne zeilen löscht. zb wenn nur das Passwort stimmt löscht er auch nur das PW nicht die email. Also muss es ja beides stimmen das PW und die mail adresse.

Hier der austragungsteil von der php.
Ach ja und bitte gute erklärung oder beispiel bin absoluter newbie in php.

Und wenn wir schon mal dabei sind vieleicht verrät mir mal einer wie ich für den admminbereich nur die email adressen auslese und wie ich eine automatische mail verschicke wenn jemand sein pw vergessen hat.

Die txt sieht nach dem speichern so aus

email
pw


#--=====================Austragen===================================--
else:
$laden=fopen("mails","r");
rename("mails","mails.tmp");
$speichern=fopen("mails","w");
if($speichern<=0):
rename("mails.tmp","mails");
else:
while(feof($laden)==0):
$mail=chop(fgets($laden,50));
if($mail=="")
continue;
if ($mail=="$email"):
echo $email," wurde erfolgreich ausgetragen<br>";
$a=1;
else:
if ($mail=="$password"):
echo $password," wurde erfolgreich ausgetragen<br>";
$a=1;
else:
fputs($speichern,$mail."\n");
$zahl++;
endif;
endif;
endwhile;
fclose($speichern);
fclose($laden);
unlink("mails.tmp");
endif;
if ($a!=1):
echo $email,"<br>ist in unserer Datenbank nicht vorhanden";

endif;
endif;
#--=====================Log Speichern===================================--
$datei=fopen("log","w");
fputs($datei,$zahl);
fclose($datei);
 
haupproblem nr.1 in allen (coding)foren,

fast jeder will gleich voll losstarten mit programmieren, ohne einen gesamtüberlick über funktionen, möglichkeiten usw... zu haben. Viele können ja nicht mal programmieren. Es wäre hilfreich wenn du dir ein buch zulegst und es kapitel für kapitel durchgehst, oder zumindest einige tuturials durchliest.

zu deinem problem:
du schreibst die daten für deinen newsletter in eine datei!! Wenn du viele abonnenten (bzw. viele die sich anmelden) hast ist das eher ungeschickt da es viel rechenleistung benötigt und dein server dann recht lahm sein wird. Eine bessere, aber auch anspruchsvollere Lösung wäre natürlich mit einer Datenbank. Aber da sollte man ja schon fast wieder ein buch lesen oder zumindest muss man dann auch die 200 Seiten über SQL im php Buch lesen und das ist halt soooo anstrengend. ;)

zum löschen aus der datei musst du halt mit dem dateisystem und den befehlen vertraut sein.
jede zeile könnte so aussehen:
email__passwort\n usw...
dann kannst du jede zeile einzeln einlesen und mit den eingaben vergleichen. (also aufspliden an den "__" oder so da gibts es mehr als nur eine funktion die du hier verwenden könntest. z.B split, explode usw...)
zu der frage: er löscht hin und wieder auch nur eines!!!!! (lol):
da kann man ja mit abfragen abhilfe schaffen: z.b nachdem du die eingelesene zeile aufgesplitet hast in ein array mit daten(email,passwort) wäre das nur noch eine simple abfrage blablabla....

das gleiche gilt für die frage mit dem admin bereich:
du nimmst aus der datei einfach aus jeder zeile die zeichenkette vor __

aber wie gesagt, mit datein ist das nicht sehr sehr elegant bzw. performance-freundlich.

eine frage in eigener sache:
Warum brauchst du für einen Newsletter ein Passwort? normalerweise tragen sich die User nur mit der email addrese ein und können sich per email wieder (wie nennt man dass???) "entabonnieren" oder so.
aber eigenltich braucht man kein password, wenn du nicht mehr als einen newletter willst.

greetz
slaven
 
:)

Hi

Ich bin schon derzeit am lesn und mache das nun mit explode und zeilen abfragen ist recht net :)

Das Password ist ganz einfach warum ic das mache, und zwar wenn der user sich abmeldet und ich erst noch ne mail schicken muss ( automatic mail ) das wäre dannn wieder unnötiger traffic der teuer ist. Die meisten user haben ihr passwort im kopf und können sich sofort abmelden ohne erst noch auf ein replay zu warten email client öffnen link klicken und ausgetragen zu umständlich. Vorteil ist nunmal das sie sich sofort austragen können.

Gruss Kay
 
Zurück
Oben