Antworten auf deine Fragen:
Neues Thema erstellen

Antworten zum Thema „Wert in Array löschen“

M4tman

booN

Hi,
ich wollte mal wissen wie ich einen bestimmten Wert aus einem Array löschen kann.

Es geht um einen Newsletter, wo mann eine Emailadressen eingibt, erst wird überprüft ob die E-Mailadresse schon vorhanden ist, wenn ja denn soll sie gelöscht werden ( hierzu meine Frage ), wenn sie nicht vorhanden ist wird sie mit ins array Adressen gespeichert.

Also die e-mailadresse die über ein POST-Forumlar weitergegeben wird soll überprüft, gegenbenfals gelöscht / eingetragen werden.
Geht auch wunderbar, bissauf das löschen.

mit unset() geht das glaube ich nicht, denn es soll der wert gelöscht werden der mit $_POST['email'] übergeben wird.

Hier der Code:
PHP:
<?php
if(isset($_POST['email'])) {
$daten = file_get_contents('adressen.dat');
$array01 = (explode('<|>', $daten, 100));
if(in_array("{$_POST['email']}", $array01)) {
echo "Die Mailadresse befindet sich im Array";
! HIER SOLL DAS LÖSCHEN DES WERTES REIN !
}
else {
echo "Email eingetragen";
$daten = "{$_POST['email']}<|>";
$datenbank = "adressen.dat";
$datei = fopen($datenbank,"a");
fwrite($datei, $daten);
}
}
else {
?>
<form method="POST" action="indexe.php">
Enter E-Mail Newsletter E-MailAdress:<input type="text" name="email"><input type="submit" value="eintragen / l&ouml;schen">
</form>
<?php
}
?>
 
Zuletzt bearbeitet:

CGE500

Noch nicht viel geschrieben

AW: Wert in Array löschen

Also wenn die Emailadresse noch nicht im Array ist, dann soll sie eingetragen werden und wenn nicht, dann soll sie gelöscht werden?

Also ich würde das so machen:

PHP:
if(!($key = array_search($_POST['email'], $array)))
    $array[] = $_POST['email'];
else
    unset($array[$key]);
Ich hoffe das war, was du wolltest...
 

M4tman

booN

AW: Wert in Array löschen

ja so meine ich das, nur muss das Array nicht wieder neu geordnet werden wenn ein wert entnommen wird ?
Und dein Code den du gepostet hast verstehe ich nicht ganz....
sorry ^^
 

CGE500

Noch nicht viel geschrieben

AW: Wert in Array löschen

PHP:
if(!($key = array_search($_POST['email'], $array))) //wenn die adresse gefunden wird, wird der Index des Wertes in $key gespeichert
    $array[] = $_POST['email']; //Wenn die Adresse nicht gefunden wird, (also $key === false), dann erweitere das array mit der Mail-Adresse
else
    unset($array[$key]); //Wenn sie gefunden wurde, lösche die Mailadresse anhand des Indexes, welchen wir über array_search() erhalten

Wenn du das array danach wieder sortiert haben willst, dann mach das einfach mit den Arraysortierfunktion von PHP.

lg
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
175.189
Beiträge
2.582.077
Mitglieder
67.259
Neuestes Mitglied
SaschMasch1312
Oben