PHP Liste erstellen die man befüllen und leeren kann

Alfredo

Commander
Registriert
Juli 2005
Beiträge
2.934
Hallo zusammen,

stehe gerade auffem Schlauch :(
Ich habe nur php zur Verfügung und kein sql oder eine andere Datenbank.

Und zwar will ich per Formular bzw. ein Eingabe Feld ein Liste erstellen mit Links.

Also man trägt im Eingabefeld einen Link ein, drückt auf einen Button und der Link soll darüber erscheinen. Danach könnte ich noch einen Link im selben Eingabefeld eingeben und ein klick auf den Button soll dann beide Links anzeigen.

Neben den Links würde ich dann gerne noch so ein Funktion einbauen, wo z.B. einzelnen Links wieder löschen könnte.

Wie auf dem Bild:
 

Anhänge

  • clipboard3mp0.jpg
    clipboard3mp0.jpg
    48 KB · Aufrufe: 988
Du kannst die Links z.B. zeilenweise in einer Datei speichern, und wenn du etwa den dritten Link später löschen willst, löschst du die dritte Zeile aus der Datei.
 
Mit arrays geht es nicht? Hatte es mir eher so vorgestellt. Mir ist klar dass beim nächsten Aufruf die Sachen verschwunden wären.
 
Ja natürlich liest man das dann in Arrays ein ;)
 
Ja aber wie mach ich das :) Bei Arrays bin ich nicht so fit. Also quasi erst in eine Datei schreiben und dann aus der Datei in ein Array lesen. Wie ist das wenn ich einzelne Elemente aus dem Array löschen will?
 
Leider nur PHP 4.3. :(

Es gibt keine Möglichkeit was zu installieren. Naja ich werde mich heute mal ein wenig einlesen.
Mit arrays bin ich zwar nicht so fit, aber mal gucken.
 
Ich habe hier mal schnell meine Gedanken aufgeschrieben.
Man kann alles sehr schnell mit Funktionen machen und im Code sieht es nachher schön aufgeräumt aus. Alle Infos kann man sich aus der php Doku holen.


Lesen eines Arrays aus einer Datei und Ausgabe

PHP:
$lines = file ('linkdatei.txt');

foreach ($lines as $line_num => $line) 
{
    echo "<a href='" . $line . "'>" . $line . "</a><br>\n";
}


Hinzufügen eines Elements in einen Array
PHP:
$lines = file ('linkdatei.txt');

array_push($lines, 'neuerlink');


Entfernen eines bereichs des Strings nach Inhalt

PHP:
$newlist = "";
$listitems = explode(",", $lines);
$listitems = array_diff($listitems, (array)'linkzumlöschen');
$newlist = implode(",", $listitems);
$lines = $newlist
 
Danke funktioniert soweit ganz gut,

nur mit dem löschen komm ich noch nicht ganz klar. Was muss in (array)?
 
Der Teil:

PHP:
$listitems = array_diff($listitems, (array)'linkzumlöschen');

bedeutet das das Item 'linkzumlöschen' als Array gecastet (umformatiert) wird, um den String innerhalb des Arrays $listitems zu finden. Als Resultat von array_diff kommt dann die Differenz raus, also $listitems ohne den Teil der (array)'linkzumlöschen' entspricht.
 
bevor ihr hier noch größere code bibliotheken auspackt... *g*

http://de.php.net/manual/de/function.parse-ini-file.php

guck dir das mal an, ich denke das sollte deinen ansprüchen genügen :)
(schreiben würde ich die datei dann mit 2 verschachtelten foreach schleifen, eine für die datensätze selber und einer für die felder des arrays -> wenn du das ncih hinbekommst pm schreiben, jetzt weiter fusi :P )
 
Zurück
Oben