par
Typher007 » 01 avr. 2010, 18:04
Bonjour, je viens de créer une fonction effacer qui me permet d'effacer une ligne voulu passer en paramètre, ma fonction fais exactement ce pourquoi elle est programmé, néanmoins j'ai des notices(499) de ce type :
Notice: Undefined offset: 484 in ***\ajout.php on line 54
Voila ma fonction :
function Effacer($fichier, $nb, $option)
{
if (file_exists("$fichier")) //si le fichier existe
{
if($id = fopen("$fichier", "r+")) //ouverture du fichier pour lecture et ecriture
{
--$nb; //spécifier la ligne à effacer
while(!feof($id)) //tant qu'on est pas à la fin du fichier
{
$ligne[]= fgets($id,1000000); //mettre toute la ligne à effacer dans un tableau
}
rewind($id); //placer le pointeur du fichier au début
for($i=0; $i<$nb; ++$i)
{
$partie.=$ligne[$i];
}
if($option==0)
{
$partie.=$retour;
}
for($i=$nb+1; $i>$nb, $i<500; ++$i)
{
$partie.=$ligne[$i];
}
fclose($id);
$id = fopen("$fichier", "w+");
fputs($id, $partie);
fclose($id);
//return ok;
}
else
{
return $probleme_au_niveau_du_fichier;
}
}
else
{
return $fichier_inexistant;
}
}
Si quelqu'un à une idée ! Merci d'avance
PS : la ligne 54 Correspond à cette ligne : (flèche)
for($i=$nb+1; $i>$nb, $i<500; ++$i)
{
==> $partie.=$ligne[$i]; <===
}
Bonjour, je viens de créer une fonction effacer qui me permet d'effacer une ligne voulu passer en paramètre, ma fonction fais exactement ce pourquoi elle est programmé, néanmoins j'ai des notices(499) de ce type :
[i]Notice: Undefined offset: 484 in ***\ajout.php on line 54[/i]
Voila ma fonction :
[php]function Effacer($fichier, $nb, $option)
{
if (file_exists("$fichier")) //si le fichier existe
{
if($id = fopen("$fichier", "r+")) //ouverture du fichier pour lecture et ecriture
{
--$nb; //spécifier la ligne à effacer
while(!feof($id)) //tant qu'on est pas à la fin du fichier
{
$ligne[]= fgets($id,1000000); //mettre toute la ligne à effacer dans un tableau
}
rewind($id); //placer le pointeur du fichier au début
for($i=0; $i<$nb; ++$i)
{
$partie.=$ligne[$i];
}
if($option==0)
{
$partie.=$retour;
}
for($i=$nb+1; $i>$nb, $i<500; ++$i)
{
$partie.=$ligne[$i];
}
fclose($id);
$id = fopen("$fichier", "w+");
fputs($id, $partie);
fclose($id);
//return ok;
}
else
{
return $probleme_au_niveau_du_fichier;
}
}
else
{
return $fichier_inexistant;
}
}[/php]
Si quelqu'un à une idée ! Merci d'avance
PS : la ligne 54 Correspond à cette ligne : (flèche)
[php]for($i=$nb+1; $i>$nb, $i<500; ++$i)
{
==> $partie.=$ligne[$i]; <===
}[/php]