Allaoleva koodi ei jonkun syyn takia toimi, sillä scripti muokkaa yhden isomman luvun aina kolmannelle riville. Vaikka id olisi 57 (joka tarkoittaisi riviä 57) tai 1, scripti vain tulostaa riville # 3. Mitä pitäisi tehdä?
<?php $filu2 = file("tehtavat.txt"); for ($o = 0; $o < count($filu2); $o++) { $exp = explode("|<>|", $filu2[$o]); if ($exp[2] == $_GET["id"]) { $rivinumero = $o; $luku = $exp[1] + 1; } } $filu2[$rivinumero] = $exp[0] . "|<>|" . $luku . "|<>|" . $exp[2] . "|<>|" . $exp[3] . "|<>| "; $fopen = fopen("tehtavat.txt", "w"); fwrite($fopen, implode("", $filu2)); fclose($fopen); header("Location: etusivu.php?act=lisaamerkinta"); ?>
Ja oletetaan että tehtavat.txt on tällainen:
Tehtävä 1|<>|0|<>|Jtn|<>|Jtn|<>|
Tehtävä 2|<>|0|<>|Jtn 1|<>|Jtn 1|<>|
Tehtävä 3|<>|117|<>|Jtn 2|<>|Jtn 2|<>|
Aihe on jo aika vanha, joten et voi enää vastata siihen.