Hallo Leute,
vorerst gleich einmal ich weiss dass es keine optimale Lösung ist, aber die wollen es so.
Ich schreibe gerade ein PHP Skript, das Mailadressen in eine Datei schreibt, oder die löscht wenn sie schon vorhanden sind.
Leider habe ich Probleme mit dem eintragen in die Datei. Ich möchte gerne in jeder Zeile eine Mailadresse haben. Und die alten in der Datei sollen überschrieben werden.
Wie könnte ich es den richtig machen, ich habe schon probiert die Datei vorher einfach zu löschen, aber irgendwie ändert das auch noch nichts.
Das Problem ist das alte Infos noch drinnen bleiben, oder er mehrere Mails in eine Zeile schreibt.
lg aus Guatemala, und danke für eventuell hilfreiche Antworten
Darian
vorerst gleich einmal ich weiss dass es keine optimale Lösung ist, aber die wollen es so.
Ich schreibe gerade ein PHP Skript, das Mailadressen in eine Datei schreibt, oder die löscht wenn sie schon vorhanden sind.
Leider habe ich Probleme mit dem eintragen in die Datei. Ich möchte gerne in jeder Zeile eine Mailadresse haben. Und die alten in der Datei sollen überschrieben werden.
PHP:
if(isset($_REQUEST[submit])) {
include("functions.inc.php");
//Check Mailadresse
if(preg_match("/[\.a-z0-9_-]+@[a-z0-9-]{2,}\.(([a-z]{2,6})|([a-z]{2,6}\.[a-z]{2,6}))$/i",$_REQUEST[email])) {
$mails = file("mails.txt");
$eintragen = 1;
//Überprüfen ob die Mailadresse schon existiert
//Wenn ja wird ausgetragen, wenn nein wird eingetragen
foreach ($mails as $key => $mail) {
if($mail == $_REQUEST[email]) {
unset($mails[$key]);
$eintragen = 0;
}
}
//Nach löschen in der mitte bereinigen des Arrays
if($eintragen = 0) {
//Funktion die doppelte Einträge entfernt, und Lücken stopft...
$mails = CleanArray($mails);
}
else {
array_push($mails, $_REQUEST[email]);
}
//Array wieder in Datei schreiben
//$file = fopen("mails.txt", "w");
//fwrite($file, $mails);
unlink("mails.txt");
file_put_contents("mails.txt", $mails);
//Nachricht ausgabe
if($eintragen == 0) {
echo "Mailadresse erfolgreich ausgetragen!";
//echo "<meta http-equiv='refresh' content='2;URL=newsletter.php'>";
}
else {
echo "Mailadresse erfolgreich eingetragen!";
//echo "<meta http-equiv='refresh' content='2;URL=newsletter.php'>";
}
}
else {
echo "Bitte geben Sie eine korrekte Mailadresse ein";
echo "<meta http-equiv='refresh' content='2;URL=newsletter.php'>";
}
}
else { ?>....HTML Code...
Wie könnte ich es den richtig machen, ich habe schon probiert die Datei vorher einfach zu löschen, aber irgendwie ändert das auch noch nichts.
Das Problem ist das alte Infos noch drinnen bleiben, oder er mehrere Mails in eine Zeile schreibt.
lg aus Guatemala, und danke für eventuell hilfreiche Antworten
Darian