Insertion dans une page

Insertion dans une page - PHP - Programmation

Marsh Posté le 01-06-2003 à 17:50:41    

Comment faire pour insérer du code dans une page php, à partir d'une autre page php ?
 
j'utilise fopen() et ensuite fseek() pour placer le pointeur ou je veux dans ma page et ça marche, le problème c que j'aimerais rajouter du code et pas écrire par dessus comme dans un traitement de texte.  
 
Voila mon bout de code :
 

Code :
  1. <?
  2. $filename = "mapage.php" ;
  3. $pointeur = 5 ;
  4. $text = "bout de code ou texte";
  5. if (is_writable($filename)) {   
  6.  
  7. if (!$handle = fopen($filename, 'r+b'))
  8. {       
  9.  print "Impossible d'ouvrir le fichier ($filename)";       
  10.  exit;   
  11. }
  12. fseek($handle, $pointeur);
  13. $text = stripslashes($text);
  14.      
  15.      
  16. if (!fwrite($handle, $text))
  17. {     
  18.  print "Impossible d'écrire dans le fichier ($filename)";     
  19.  exit;   
  20. }           
  21. fclose($handle);                   
  22. }
  23. else
  24. {   
  25.  print "Le fichier $filename n'est pas accessible en écriture.";
  26. }
  27. ?>


Message édité par L0k le 01-06-2003 à 17:52:24
Reply

Marsh Posté le 01-06-2003 à 17:50:41   

Reply

Marsh Posté le 01-06-2003 à 17:56:11    

Code :
  1. fopen($filename, 'a')


 
a pour ouvrir le fichier en ecriture seule et placer le pointeur en fin de fichier
 
a+ pour ouvrir le fichier en lecture-ecriture et placer le pointeur en fin de fichier


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 01-06-2003 à 17:57:48    

merci, mais en fait el but c pas d'écrire à la fin mais au milieu.. Je veux dire p. ex.
 

Code :
  1. <?
  2. $filename = "mapage.php" ;
  3. $pointeur = 5 ;
  4. $text = "bout de code ou texte";
  5. $codeajout="code ajouté ici";
  6. if (is_writable($filename)) {   
  7.  
  8. if (!$handle = fopen($filename, 'r+b')) 
  9. {         
  10. print "Impossible d'ouvrir le fichier ($filename)";         
  11. exit;   
  12. fseek($handle, $pointeur);
  13. $text = stripslashes($text);
  14.        
  15.      
  16. if (!fwrite($handle, $text)) 
  17. {       
  18. print "Impossible d'écrire dans le fichier ($filename)";       
  19. exit;   
  20. }             
  21. fclose($handle);                   
  22. else 
  23. {   
  24. print "Le fichier $filename n'est pas accessible en écriture.";
  25. }
  26. ?>

Reply

Marsh Posté le 01-06-2003 à 18:07:32    

autant pour moi  :ange:  
 
et en precisant le nombre de bytes....
 
du genre
fwrite($handle, $text, 1024);  
 
en mettant une taille assez longue pour ne pas couper ta chaine.
 
sinon la solution est de lire la ligne sur laquelle tu te positionnes, la stocker dans une variable et la reecrire en meme tant que l'ajout  [:spamafote]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 01-06-2003 à 18:13:55    

mhh bof bof en précisant le nombre de bytes, çA efface ce qu'il y a avant. et ta dernière solution me semble capilotractée..

Reply

Marsh Posté le 03-06-2003 à 09:57:52    

pourquoi ne pas utilisé INCLUDE tout simplement ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed