Toon posts:

[PHP] tekstfiles bewerken

Pagina: 1
Acties:
  • 51 views sinds 30-01-2008

Verwijderd

Topicstarter
wat ik wil:
- een directory openen
- een tekstfile inlezen in een array
- iets in deze tekstfile toevoegen
- vanaf een bepaalde regel de ingelezen info terug'pasten' in de file
- volgende file pakken
enz.....

wat ik heb:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
$dirs = pages; 

//inhoud van de directory ophalen 
$handle = opendir($dirs); 

while ($files = readdir($handle)) 
{
    if($files == '.' || $files == '..')
    {
     continue;
    }
    else
    {
     $file = fopen ("$dirs/$files","w");
     $content = fread($file);
     fclose($file);
     // maak array met alle regels uit de file
     $lines = explode("\n",$content);
     // eerst ff wat in de tekstfile doen
     fputs ($file,"dit wordt toegevoegt");
     // nu regel voor regel weer terug voegen
     for ($k=0; $k<count($lines); $k++)
     {
      fputs ($file,$lines[$k]);
     }
    }
} 
closedir($handle); 
echo 'DONE'
?>


heeft iemand een verfrissende kijk hierop? ik cirkel een beetje in rondjes...

[ Voor 7% gewijzigd door Verwijderd op 01-09-2003 13:58 ]


  • Helmet
  • Registratie: Januari 2002
  • Laatst online: 17-08 10:28
je opent je file om te lezen en wil er vervolgesn met fputs in schrijven dit gaat niet werken

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
$dirs = 'pages'; 

//inhoud van de directory ophalen 
$handle = opendir($dirs); 

while ($files = readdir($handle)) 
{
    if($files == '.' || $files == '..')
    {
     continue;
    }
    else
    {
     $file = fopen ("$dirs/$files","r");
     $content = fread($file);
     fclose($file);
     // maak array met alle regels uit de file
     $lines = explode("\n",$content);
     // eerst ff wat in de tekstfile doen
                 $fp = fopen($file,'w+');
     fputs ($fp,"dit wordt toegevoegt");
     // nu regel voor regel weer terug voegen
     for ($k=0; $k<count($lines); $k++)
     {
      fputs ($fp,$lines[$k]);
     }
                 fclose ($fp);
    }
} 
closedir($handle); 
echo 'DONE'
?>

[ Voor 106% gewijzigd door Helmet op 01-09-2003 14:09 . Reden: hmmz foutje in me code :S ]

Icons are overrated


Verwijderd

Topicstarter
foutje... zover was ik ook nog. dit stond er omdat ik aan het expirimenteren was. de file werd namelijk overschreven

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Wat lukt er dan niet?

Verwijderd

Topicstarter
dit krijg ik als output als ik het script run...
(in een dir staat dit php-script en een directory met files)
code:
1
2
3
4
5
6
7
8
9
Warning: Wrong parameter count for fread() in /usr/home/test/t2.php on line 16

Warning: fopen() expects parameter 1 to be string, resource given in /usr/home/test/t2.php on line 21

Warning: fputs(): supplied argument is not a valid stream resource in /usr/home/test/t2.php on line 22

Warning: fputs(): 3 is not a valid stream resource in /usr/home/test/t2.php on line 26

Warning: fclose(): supplied argument is not a valid stream resource in /usr/home/test/t2.php on line 28

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

maak van
PHP:
1
$dirs=pages
PHP:
1
$dirs = 'pages'


en dan werkt het wel zo te zien aan je foutmeldingen ;)

Stop uploading passwords to Github!


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 17-08 23:56

Janoz

Moderator Devschuur®

!litemod

Dit is in principe gewoon debug werk. Zoals ook in de faq te lezen is doen wij hier niet aan. Met het goed lezen van deze foutmeldingen kom je een heel eind. Let er op dat een foutmelding op regel X niet hoeft te betekenen dat de fout op regel x staat. In dit geval begint de fout namelijk al een stuk eerder. Begin eerst eens met regel 2 te verbeteren.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1

Dit topic is gesloten.