Come ti ho detto, non è che (per me) ha molto senso il tuo codice
Io farei così:
Codice PHP:
<?php
$idDaModificare = 1; // magari poi lo prendi da $_GET;
$testo=fopen("prova.txt","r");
$new=fopen("iscrittin.txt","a");
while($rigafile=fgets($testo)){
$campiriga=explode("|",$rigafile);
$idriga=$campiriga[0];
if($idriga==$idDaModificare ){
if(isset($_POST['submit'])){
$cnome=$_POST["nome"];
$ccognome=$_POST["cognome"];
$cvia=$_POST["via"];
$nuovariga=$idriga."|".$cnome."|".$ccognome."|".$c via."\n";
fwrite($new,$nuovariga);
}else{
$cnome = $campiriga[1];
$ccognome = $campiriga[2];
...
}
}else{
fwrite($new,$rigafile);
}
}
}
fclose($testo);
fclose($new);
//cancellare vecchio file
unlink("prova.txt");
//rinomina file
rename("iscrittin.txt","prova.txt");