Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » PHP & MySQL » Daten aus Textdatei richtig auslesen Antworten
Daten aus Textdatei richtig auslesen

bastir
Mausakrobat


Beiträge: 150


So meinte ich es auch nicht 100%.

Du hast/kannst doch sämtliche Zeilen der txt Datei in dein Array gelesen.
Nun kannst du doch die alte txt "löschen" bzw. leeren und dann mit den Daten aus dem Array wieder neu "bestücken" bzw. schreiben.
Theoretisch kannst du die alte txt ja wirklich löschen (unlink etc.) und dann die neue txt anlegen.

Viel Vergnügen
Sebastian

---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

  Profil   Website   Editieren   Zitieren

Diamo
Feiertags-Poster


Beiträge: 38


Ich glaub jetzt hab ich dich verstanden. Werde das mal ausprobieren sobald ich Zeit habe. Danke

  Profil   E-Mail   Website   Editieren   Zitieren

Diamo
Feiertags-Poster


Beiträge: 38


Also habs jetzt hinbekommen !!!

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39: 
40:
<?php 

$datei = file("../uploads/info.txt");
if (isset($kat)){}else{$kat="pics";}

if($action && $action=="delete")
{
	$fp = fopen ("../uploads/info.txt","w");
	
	for ($z=1; $o<count($datei); $o++)
	{
		if ($check[$o] != "yes")
		{
			fwrite($fp, $del[$o]."#".$showtext[$o]."#".$showkat[$o]."\n");

		}else{
			unlink("../uploads/".$showkat[$o]."/".$del[$o]);
		}
	}
}

for ($i=0; $i < count($datei); $i++) 
{   
    $split[$i] = explode("#",$datei[$i]);
        if (trim($split[$i][2])==$kat)
        {
        $y=$y+1;
        $z=$z+1;
        echo "<td valign='top' align='center' class='copytext'>\n"
            ."    <img src=../uploads/".trim($split[$i][2])."/". $split[$i][0] ." height=100 width=150 border=0>\n"
	    . "<input type=checkbox name=check[".$z."] value=yes border=0>\n"
	    . "<input type=hidden name=del[".$z."] value=".$split[$i][0]." border=0>\n"
	    . "<input type=hidden name=showkat[".$z."] value=".trim($split[$i][2]).">\n"
	    . "<input type=hidden name=showtext[".$z."] value=".$split[$i][1].">

\n"
            ."</td>\n";
        if ($y % 6 == "0") echo "</tr><tr>";
}}
?>

Diese Nachricht wurde geändert von: Diamo
  Profil   E-Mail   Website   Editieren   Zitieren

Diamo
Feiertags-Poster


Beiträge: 38


Kann ich mittels Javascript den Wert für die Vaiable an die url übergeben ? also z.B. index.php?kat=pics ?

  Profil   E-Mail   Website   Editieren   Zitieren

bastir
Mausakrobat


Beiträge: 150


Ja, das geht. Probier es einfach mal aus.

---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

  Profil   Website   Editieren   Zitieren

Diamo
Feiertags-Poster


Beiträge: 38


Lösung war ja ganz leicht:
1: 
2: 
3: 
4:
echo "<b>Ausgew&auml;hlte Dateien wurden gel&ouml;scht.</b><br>Bitte Section ausw&auml;hlen um weitere Bilder zu l&ouml;schen";
echo "<script language='javascript'><!--\n";
echo "document.location='pics.php".$kat."'\n";
echo "//--></script>\n";


Jedoch ist mir gerade ein Fehler im Script aufgefallen. Wenn ich jetzt z.B. in der Section 'pics' ein Bild lösche, dann löscht er die ganzen Bilder von den anderen Sections auch mit. Die Bilder die ich in 'pics' nicht ausgewählt habe, sind noch da. Woran liegt der Fehler ? Hab mir die info.txt angeschaut und es wird nur "##" in den anderen Sections gespeichert, also ohne informationen

  Profil   E-Mail   Website   Editieren   Zitieren

bastir
Mausakrobat


Beiträge: 150


dann poste mal den quelltext, damit man sich das mal angucken kann.

ciao
sebastian

---
Man kann nicht alles wissen, man muß nur wissen wo es steht!

  Profil   Website   Editieren   Zitieren

Diamo
Feiertags-Poster


Beiträge: 38


Kannst du den Code mal ausprobieren, irgendwie geht er nicht wirklich....

1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
31: 
32: 
33: 
34: 
35: 
36: 
37: 
38: 
39:
<?php 

$datei = file("../uploads/info.txt");

if($action && $action=="delete")
{
	$fp = fopen ("../uploads/info.txt","w");
	
	for ($z=1; $o<count($datei); $o++)
	{
		if ($check[$o] != "yes")
		{
			fwrite($fp, $del[$o]."#".$showtext[$o]."#".$showkat[$o]."\n");

		}else{
			unlink("../uploads/".$showkat[$o]."/".$del[$o]);
			echo "<b>Ausgew&auml;hlte Dateien wurden gel&ouml;scht.</b><br>Bitte Section ausw&auml;hlen um weitere Bilder zu l&ouml;schen";
			echo "<script language='javascript'><!--\n";
			echo "document.location='pics.php'\n";
			echo "//--></script>\n";
		}
	}
}

for ($i=0; $i < count($datei); $i++) 
{   
    $split[$i] = explode("#",$datei[$i]);
        $y=$y+1;
        $z=$z+1;
        echo "<td valign='top' align='center' class='copytext'>\n"
            ."    <img src=../uploads/".trim($split[$i][2])."/". $split[$i][0] ." height=100 width=150 border=0><br>"
	    . "<input type=checkbox name=check[".$z."] value=yes border=0>\n"
	    . "<input type=hidden name=del[".$z."] value=".$split[$i][0]." border=0>\n"
	    . "<input type=hidden name=showkat[".$z."] value=".trim($split[$i][2]).">\n"
	    . "<input type=hidden name=showtext[".$z."] value=".$split[$i][1]."><br><br>\n"
            ."</td>\n";
        if ($y % 6 == "0") echo "</tr><tr>";
}
?>

Diese Nachricht wurde geändert von: Diamo
  Profil   E-Mail   Website   Editieren   Zitieren
Seite 1 | 2  

Antworten
Nach oben