Durch klick auf Button soll Zeile aus Datei gelöscht werden
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
bestimmte zeile
button
code
datei
einstellen
eintragen
einzelnen zeilen
erfinden
file
funktion
http
mache
nummer
packen
post
test
textfeld
variable zahl
zahl
zeile
-
Hallo.
Ich habe eine Textdatei wo einige Sachen drin stehen. Die einzelnen Zeilen sind so ausgefiltert:
$datei = "textdateien/s_spieler.txt"; $zeilen = file($datei);
Jetzt soll eine bestimmte Zeile gelöscht werden. Das mache ich so:
unset($zeilen[2]); $handle = fopen($datei, 'wb'); fwrite($handle, implode('', $zeilen)); fclose($handle);
In diesem Fall wird die Zeile 2 (unset($zeilen[2]) gelöscht. Die Zeile, die gelöscht werden soll, soll allerdings durch einen Benutzer bestimmt werden.
Das heißt, es soll ein Textfeld geben, wo man die Nummer der Zeile eintragen kann. Diese Zahl soll in einer Variable $zahl gespeichert werden. Durch einen klick auf einen Button soll dann die zeile[$zahl] gelöscht werden.
Wie mache ich das?
Könnte ich diesen Code nehmen:
$datei = "textdateien/s_spieler.txt"; $zeilen = file($datei); unset($zeilen[$zahl]); $handle = fopen($datei, 'wb'); fwrite($handle, implode('', $zeilen)); fclose($handle);
Wenn ja, wie muss ich den Button einstellen, sodass er diesen Code ausführt?
Oder wie würde das mit onclick gehen?
Ich hoffe ihr versteht mich ;)
Liebe Grüße -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Nur dein Code zusammengesetzt:
<form method="post"> <input type="text" name="nr" placeholder="Zeile" /> <input type="submit" name="submit" value="X" /> </form> <?php if(isset($_POST['nr'])) { $zeile = $_POST['nr'] - 1; // weil du mit Zeile 1 $zeilen[0] meinst $datei = "textdateien/s_spieler.txt"; $zeilen = file($datei); unset($zeilen[$zeile]); $handle = fopen($datei, 'wb'); fwrite($handle, implode('', $zeilen)); fclose($handle); echo('gelöscht!'); } ?>
-
@hackyourlife: Es geht hier um eine AJAX Variante.
Zum Thema:
Das Ganze funktioniert mit AJAX.
Ich würde dir empfehlen, dass du jQuery als Framework verwendest, damit du das Rad nicht selbst erfinden musst.
Dann kannst du mit dem onClick diese Funktion verwenden:
http://api.jquery.com/jQuery.post/
$.post("test.php", { zeile: "25" }, function(data) { alert(" Zeile gelöscht "); });
Um die Zeile aus der HTML Datei direkt auszublenden kannst du diese Funktion nutzen:
http://api.jquery.com/fadeOut/
Das Ganze führst du dann in der Funktion oben aus.
$.post("test.php", { zeile: "25" }, function(data) { $('#zeile25').fadeOut(); });
Vorausgesetzt, dass jede Zeile mit einer ID a la zeileXXX ausgestattet ist.
Das Ganze noch in eine Funktion packen:
function loescheZeile($num) $.post("test.php", { zeile: $num }, function(data) { $('#zeile'+$num).fadeOut(); }); }
Dann kannst du ganz bequem beim onclick die Funktion aufrufen loscheZeile(25); :)
Beitrag zuletzt geändert: 28.6.2012 11:03:15 von sneppa -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage