• Wieder einmal haben uns unsere Apfeltalker tolle Fotos zur Abstimmung eingesandt. Welches ist Euer Favorit? Stimmt mit ab! Hier geht es zur Abstimmung --> Klick
  • Es ist bereits Apfeltalk-Tradition und wir möchten sie auch in diesem Jahr fortsetzen: Unser Apfeltalk-Weihnachtslogo-Wettbewerb hat begonnen! Gestaltet für uns das Weihnachtsbanner, das im Monat Dezember bis zum Weihnachtsfest unsere Webseite schmücken soll. Lasst Eurer Kreativität freien Lauf! Hier geht es zum Wettbewerb --> Klick

[PHP] Einzelne Zeile von Textdatei ersetzen

Mini-Leopard

Rhode Island Greening
Registriert
20.03.08
Beiträge
476
Liebe Community.

Ich schreibe gerade ein Script. Dieses Sieht bisher so aus:
Code:
<?php
$code = md5($_GET["req"]);
$codeExists = false;
$datei = fopen("http://www.beispiel.de/regfile.txt", "w+");
$temp = file("http://www.beispiel.de/regfile.txt", FILE_IGNORE_NEW_LINES);
foreach ($temp as $tpm){
	$check = explode("=", $tpm);
	if($code == $check[0]){
		$codeExists = true;	
		if($check[1] == "true"){
			echo("true");
			break;
		}
		else{
			echo("false");
			$check[1] = "true";
			break;
		}
	break;
	}
}	
	if($codeExists == false){
		echo("noExist");
	}
echo($alles);
?>

Nun stehe ich vor folgendem Problem:
Wenn echo("false"); ausgegeben wird, soll gleichzeitig auch die Zeile in der Textdatei verändert werden.
Hintergrund ist, dass eine Nummer aus der Textdatei abgefragt wird. Wenn diese noch frei ist (false), dann wird das ganze zurückgegeben und sie soll dann durch das Skript reserviert werden (=true) --> $check[1] = "true";

Ich habe schon versucht, den Wert in dem Array zu ändern und das ganze dann gesammelt in die Datei zu schreiben. Das haut so aber leider nicht hin.
Also möchte ich jetzt, wenn ich an dieser Stelle / Zeile bin, die Änderung direkt im Text-File ausführen.

Ist das irgendwie möglich?!


Vielen Dank und liebe Grüße
…
 
Der ganze Witz an der Sache ist, dass fwrite(); nur funktioniert, wenn mann nicht http://www. vorweg hat.
Inzwischen hab ich die ganze Geschichte hin bekommen, indem ich ein paar breaks rausgenommen habe.

So funktioniert die Sache jetzt:
Code:
<?php
$code = md5($_GET["req"]);
$codeExists = false;
$reWrite = false;
$alles = "";
$temp = file("./regfile.txt", FILE_IGNORE_NEW_LINES);
foreach ($temp as $tpm){
	$check = explode("=", $tpm);
	if($code == $check[0]){
		$codeExists = true;	
		if($check[1] == "true"){
			echo("true");
		}
		else{
			echo("false");
			$check[1] = "true";
			$reWrite = true;
		}
		
	}
	$alles = ($alles.$check[0]."=".$check[1]."\n");
}	
if($codeExists == false){
	echo("noExist");
}
if($reWrite == true){
$datei = fopen("./regfile.txt", "w+");
fwrite($datei, $alles);
}
?>