| 
					
							
        
    
        
						
			 | 
			
			
					    
					
        
         
          
         
	
            | klipper noget af data til fil Fra : scootergrisen | 
  Dato :  01-02-10 08:55 |  
  |   
            Jeg har en php funktion som tilføjer noget tekst i bunden af en fil om
 hvilken side som blev besøgt på min hjemmeside og hvor de kom fra og
 ip og tidspunkt.
 
 Men nogle gange bliver hele linien ikke skrevet...
 
 Den klipper noget af starten af linien.
 
 Her er noget af den kode som jeg mener kan være skyld i fejlen:
 
 -------------------------------------
 KODE-------------------------------------
 
 $fil = "besog.txt";
 $datatilfil = "forsiden 127.0.0.1 - 01.01.2010\r\n";
 
          if ($filhandle = fopen($fil, "a")){
 
             if (fwrite($filhandle, $datatilfil)){
 
                fclose($filhandle);
 
             }else{
 
                trigger_error("Der kunne ikke skrives til filen: \"$fil
 \".", E_USER_ERROR);
 
             }
 
          }else{
 
             trigger_error("Filen: \"$fil\" kunne ikke åbnes.",
 E_USER_ERROR);
          }
 -------------------------------------
 KODE-------------------------------------
 
 
 Det er ligesom om at fwrite funktionen ikke får lov at skrive dataen
 korrekt til filen.
 Eller kan det være fordi jeg bruge 'a' i fopen altså så den tilføjer i
 bunden af filen og der er et problem med det.
 
 besog.txt filen skulle så gerne indenholde noget i stil med:
 
    forsiden 127.0.0.1 - 01.01.2010
    forsiden 23.34.23.123 - 02.01.2010
    forsiden 127.0.0.1 - 04.01.2010
    forsiden 127.0.0.1 - 06.01.2010
    forsiden 147.35.3.123 - 03.05.2010
 
 men nogen gange ser den sådan her ud:
 
    forsiden 127.0.0.1 - 01.01.2010
    forsiden 23.34.23.123 - 02.01.2010
    .01.2010
    010
    forsiden 147.35.3.123 - 03.05.2010
 
 Se den klipper noget af teksten og den klipper altid det forreste af
 teksten aldrig bagfra.
 
 Hvorfor bliver linien klippet ?
  
            
             |   |   
            
        
 
            
         
           Peter Farsinsen (01-02-2010) 
         
	
            | Kommentar Fra : Peter Farsinsen | 
  Dato :  01-02-10 17:11 |  
  |   
            scootergrisen wrote:
 > $datatilfil = "forsiden 127.0.0.1 - 01.01.2010\r\n";
 
 > Hvorfor bliver linien klippet ?
 
 Har du tjekket at værdien af $datatilfil /altid/ er korrekt? Går ud fra 
 den bliver strikket sammen af nogle variable fra $_SERVER?
 
 - Peter
  
            
             |   |   
            
        
 
            
         
           Leif Neland (01-02-2010) 
         
	
            | Kommentar Fra : Leif Neland | 
  Dato :  01-02-10 18:48 |  
  |   
            scootergrisen skrev:
 > Jeg har en php funktion som tilføjer noget tekst i bunden af en fil om
 > hvilken side som blev besøgt på min hjemmeside og hvor de kom fra og
 > ip og tidspunkt.
 > 
 > Men nogle gange bliver hele linien ikke skrevet...
 > 
 > Den klipper noget af starten af linien.
 > 
 > Her er noget af den kode som jeg mener kan være skyld i fejlen:
 > 
 > -------------------------------------
 > KODE-------------------------------------
 > 
 > $fil = "besog.txt";
 > $datatilfil = "forsiden 127.0.0.1 - 01.01.2010\r\n";
 > 
 >          if ($filhandle = fopen($fil, "a")){
 > 
 >             if (fwrite($filhandle, $datatilfil)){
 > 
 >                fclose($filhandle);
 > 
 >             }else{
 > 
 >                trigger_error("Der kunne ikke skrives til filen: \"$fil
 > \".", E_USER_ERROR);
 > 
 >             }
 > 
 >          }else{
 > 
 >             trigger_error("Filen: \"$fil\" kunne ikke åbnes.",
 > E_USER_ERROR);
 >          }
 > -------------------------------------
 > KODE-------------------------------------
 > 
 > 
 > Det er ligesom om at fwrite funktionen ikke får lov at skrive dataen
 > korrekt til filen.
 > Eller kan det være fordi jeg bruge 'a' i fopen altså så den tilføjer i
 > bunden af filen og der er et problem med det.
 > 
 > besog.txt filen skulle så gerne indenholde noget i stil med:
 > 
 >    forsiden 127.0.0.1 - 01.01.2010
 >    forsiden 23.34.23.123 - 02.01.2010
 >    forsiden 127.0.0.1 - 04.01.2010
 >    forsiden 127.0.0.1 - 06.01.2010
 >    forsiden 147.35.3.123 - 03.05.2010
 > 
 > men nogen gange ser den sådan her ud:
 > 
 >    forsiden 127.0.0.1 - 01.01.2010
 >    forsiden 23.34.23.123 - 02.01.2010
 >    .01.2010
 >    010
 >    forsiden 147.35.3.123 - 03.05.2010
 > 
 > Se den klipper noget af teksten og den klipper altid det forreste af
 > teksten aldrig bagfra.
 > 
 > Hvorfor bliver linien klippet ?
 
 Der er vel ikke så meget trafik, at der er to besøgende, der kan skrive 
 til siden samtidig?
 
 Leif
 
 -- 
 Jeg foretrækker min the tilberedt efter BS6008
  
            
             |   |   
            
        
 
            
         
           scootergrisen (09-02-2010) 
         
	
            | Kommentar Fra : scootergrisen | 
  Dato :  09-02-10 07:58 |  
  |   
            Jeg kan godt lave nogle forsøg med at checke at $datatilfil altid er
 korrekt og ja den hente ip og sådan noget fra $_SERVER.
 Jeg kan jo starte med $datatilfil = 'XXXXXXXXXX'; også se hvad der
 sker.
 
 > Der er vel ikke så meget trafik, at der er to besøgende, der kan skrive
 > til siden samtidig?
 
 Det er det som jeg ikke ved... men efter hvad jeg har læst i PHP
 manualen så skulle fopen automatisk "låse" filen og med låse regner
 jeg med at det betyder at det ikke ville være sådan et problem som der
 er nu.
 
 Det kan godt være det ikke er noget problem når hjemmesiden køre
 normalt men det sker for eksempel når jeg skal validere/teste hele
 hjemmesiden altså hvor et program kalder alle filerne på hjemmesiden
 også åbner den måske 20 sider på 1 sekund eller noget i den stil.
 
  
            
             |   |   
            
        
 
    
 
					
					 
			 | 
			
				
        
			 |