Ik heb een data bestand met scheidingstekens,
de regels in dit bestand zien er als volgt uit:

data1~~data2~~data3~~data4~~data5~~

Deze lees ik uit met script1, maar als het het data bestand met script2 edit, wordt de regel na welke ik heb ge-edit niet meer weergegeven en/of er worden regels verwijderd. Kan iemand mij helpen?

script1: Lees datafile uit.
script2: Lees de gevraagde regel in en plaats deze in een formulier.
script3: schrijf de regels

########## Script1 ##########
<?php
require '../constant/header.php';

echo "<DIV ALIGN=\"Center\"><H3>Competitie Wedstrijden.</H3></DIV>\n";

$file = 'games.dat';
chmod ($file,0777);
$filepointer = fopen($file,r);
$regel = file($file);

echo "<TABLE BGCOLOR=\"#bbbbbb\" ALIGN=\"center\">\n";
echo "<TR><TH>Datum</TH><TH>Tijd</TH><TH>Plaats</TH>";
echo "<TH>Wedstrijd</TH><TH>Uitslag</TH></TR>\n\n";
for ($n = 0; $n < count($regel); $n++)
{
list($date, $time, $place, $team1, $team2, $score1, $score2, $type) = split ("~~", $regel[$n]);

switch($type) {
case 0:
$color = "#DDDDDD";
break;
case 1:
$color = "#CC6472";
break;
case 2:
$color = "#111111";
break;
}

$day = date(d);
$month = date(m);
$today = $day."-".$month;
if ($date == $today)
{$color = "#B0e0e6";
} else {
# Doe niets.
}

echo "<TR BGCOLOR=\"$color\">$now<TD><A HREF=\"edit.php?edit_id=$n\">$date</A></TD>";
echo "<TD>$time</TD>";
echo "<TD>$place</TD>";

if ($date == "&nbsp;")
{
echo "<TD>$team1$team2</TD>";
} else {
echo "<TD>$team1 - $team2</TD>";

if (($team1 == "wij") &&
($score1 > $score2))
{
$scorecolor = "#00DD00";
} else {
# Doe niets.
}

if (($team2 == "wij") &&
($score1 > $score2))
{
$scorecolor = "#DD0000";
} else {
# Doe niets.
}

echo "<TD BGCOLOR=\"$scorecolor\" ALIGN=\"center\">$score1 - $score2</TD></TR>\n";

$scorecolor= "";
}

echo "<TR><TD COLSPAN=\"5\"><SUP>Verschillende kleuren betekenen:<BR>\n";
echo "<LU>Competitie - Grijs<BR>\n";
echo "<LU>Beker - Rood<BR>";
echo "<LU>Wedstrijd vandaag - Lichtblauw</SUP></TD></TR>\n";

echo "</TABLE>\n";

#chmod ($file,0000);
require '../constant/footer.php';

########## Script2 #########

<?php
require '../constant/header.php';

$file = 'games.dat';
chmod ($file,0777);
$filepointer = fopen($file,"r+");
$regel = file($file);
for ($n = 0; $n < count($regel); $n++)
{
if ($edit_id == $n)
{
list($date, $time, $place, $team1, $team2, $score1, $score2, $type)=split("~~",$regel[$n]);

echo "<TABLE BGCOLOR=\"#dddddd\"><TR><TH>Datum</TH><TH>Tijd</TH><TH>Plaats</TH><TH COLSPAN=\"2\">Wedstrijd</TH><TH COLSPAN=\"2\">Uitslag</TH></TR>";
echo "<FORM ACTION=\"write.php\" METHOD=\"post\">\n";
echo "<TR><TD><INPUT TYPE=\"text\" NAME=\"date\" SIZE=\"5\" VALUE=\"$date\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"time\" SIZE=\"5\" VALUE=\"$time\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"place\" SIZE=\"10\" VALUE=\"$place\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"team1\" SIZE=\"15\" VALUE=\"$team1\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"team2\" SIZE=\"15\" VALUE=\"$team2\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"score1\" SIZE=\"5\" VALUE=\"$score1\"></TD>\n";
echo "<TD><INPUT TYPE=\"text\" NAME=\"score2\" SIZE=\"5\" VALUE=\"$score2\"></TD>\n";

echo "<TD><SELECT NAME=\"type\">\n";
echo "<OPTION VALUE=\"1\">Beker\n";
echo "<OPTION VALUE=\"0\" SELECTED>Competitie\n";
echo "<OPTION VALUE=\"2\">Vriendschappelijk\n";
echo "</SELECT></TD>\n";

echo "<TD><INPUT TYPE=\"hidden\" NAME=\"edit_id\" VALUE=\"$edit_id\"></TD>\n";
echo "</TR><TR><TD COLSPAN=\"8\"><INPUT TYPE=\"submit\" VALUE=\"Invoeren\"></TD></TR>\n";
echo "</FORM>\n</TABLE>\n";

} else {

fwrite($filepointer,$regel[$n]);
}

}

fclose($filepointer);
chmod ($file,0000);

require '../constant/footer.php';
?>


########## Script3 ##########

<?php
require '../constant/header.php';

$file = 'games.dat';
chmod ($file,0777);
$filepointer = fopen($file,"r+");
$regel = file($file);

for ($n = 0; $n <count($regel); $n++)
{
if ($n == $edit_id)
{
$data = "$date~~$time~~$place~~$team1~~$team2~~$score1~~$score2~~$type~~\n";
} else {
$data = $regel[$n];
}

fwrite($filepointer, $data);

}

echo "De data is goed geschreven, klik <A HREF=\"\darts\">hier</A> om verder te gaan.<BR>\n";
fclose($filepointer);
#chmod ($file,0000);
require '../constant/footer.php';
?>
Misschien ben ik heel blond bezig, maar ik wil toch mijn bijdrage leveren:)

hier:
<?
$file = 'games.dat';
chmod ($file,0777);
$filepointer = fopen($file,"r+");
$regel = file($file);

for ($n = 0; $n <count($regel); $n++)
{
if ($n == $edit_id)
{
$data = "$date~~$time~~$place~~$team1~~$team2~~$score1~~$score2~~$type~~\n";
} else {
$data = $regel[$n];
}

fwrite($filepointer, $data);

}
?>
zie ik nergens de variabele $edit_id staan. misschien helpt het om die aan te maken...
for ($n = 0; $n <count($regel); $n++)
{
if ($n == $edit_id) <-------############
{
$data = "$date~~$time....

Reageren