---
title: "Skriva till txt fil.."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/49930-skriva-till-txt-fil"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Simpa"
published: "2002-08-09T13:50:05.000Z"
updated: "2002-08-09T19:18:43.000Z"
replies: 19
views: 441
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/49930-skriva-till-txt-fil"
---

# Skriva till txt fil..

## #1 — Simpa, 2002-08-09T13:50Z

fwrite.. 
får det inte riktigt att funka, den vägrar börjar på en ny rad..

testat:
fwrite ($fp, "$namn \\r $meddelande");
fwrite ($fp, "$namn \\n $meddelande");

fwrite ($fp, "$namn ");
fwrite ($fp, "$meddelande");

men får inget att funka

ska hämta filerna så här: 

\<?php echo " $msg "; ?\>
\<?php echo " $nick "; ?\>

Hur kan jag göra .. hmm?

Permalänk: https://www.webforum.nu/p/49930

## #2 — SPiN, 2002-08-09T14:24Z

Nu vet jag inte hur du öppnar din fil, men följande borde fungera som du vill:

```
<?php
$namn = "SPiN";
$meddelande = "Mitt egna meddelande";

$filPekare = fopen( "dinFil.txt", "a+" );
if( !$filPekare )
     die( "Något blev fel vid öppnadet av filen" );

fwrite( $filPekare, $namn . "\r\n" );
fwrite( $filPekare, $meddelande . "\r\n" );

fseek( $filPekare, 0 );

while( !feof( $filPekare ) ) {
     echo "Namn: " . fgets( $filPekare ) . "<br />";
     echo "Meddelande: " . fgets( $filPekare ) . "<br /><br />";
}

fclose( $filPekare );
?>
```

Permalänk: https://www.webforum.nu/p/747096

## #3 — Simpa, 2002-08-09T14:51Z

Hmm, detta krånglar till allt lite.. 

Finns det nget annat sätt att bara skriva två rader till en fil?
Måste man skriva allt på första raden lixom ? :/

Permalänk: https://www.webforum.nu/p/747126

## #4 — SPiN, 2002-08-09T15:04Z

Första raden? Absolut inte. När du öppnar med 'a'- eller 'a+'-mode så skrivs allt längst bak i filen.

Permalänk: https://www.webforum.nu/p/747140

## #5 — Simpa, 2002-08-09T15:57Z

Hmm.. vi säger så här.. jag har två variabler som jag skickar med en form från en sida, till arbeta.php fälten är döpta till $namn och $meddelande , jag vill få in dessa värdet av dessa variabler in i en txt fil på arbeta.php, jag har försökt göra det så här:
\<?php
$fp = fopen ("e:/www/www.simpa.se/data/prata.txt", "w+" );
fwrite($fp, $namn);
fwrite($fp, $meddelande);
fclose($fp);
?\>

jag vill alltså rensa filen helt innan jag börjar skriva till den, sen så hämtar jag värdet så här: 
\<?php
$file = file("e:/www/www.simpa.se/data/prata.txt");
$nick = trim($file\[0\]);
$msg = trim($file\[1\]);
?\>
\<?php echo " $nick "\>
\<?php echo " $msg "\>
på olika ställen i txt filen..

vad är fel, hur kan jag göra.. (det är inget fel på hur jag hämtar raderna, det funkar.. ) 

SPiN? :)
Nån? :)

Permalänk: https://www.webforum.nu/p/747179

## #6 — Simpa, 2002-08-09T16:02Z

SPiN , Borde jag annat ;)

Permalänk: https://www.webforum.nu/p/747183

## #7 — SPiN, 2002-08-09T16:04Z

Ok, du vill alltså bara ha ett namn och ett meddelande hela tiden i textfilen?

```
<?php
$filPekare = fopen( "dinFil.txt", 'w+' );
if( !$filPekare )
     die( "Det blev nåt fel när filen skulle öppnas" );

fwrite( $filPekare, htmlentities( $_POST[ 'namn' ] ) . "\r\n" );
fwrite( $filPekare, htmlentities( $_POST[ 'meddelande' ] ) . "\r\n" );

fclose( $filPekare );
?>
//////////
<?php
$filArray = file( "dinFil.txt" );
$nick = $filArray[ 0 ];
$meddelande = $filArray[ 1 ];

echo $nick . "<br />";
echo $meddelande;
?>
```

Borde fungera kalas.

Permalänk: https://www.webforum.nu/p/747186

## #8 — Simpa, 2002-08-09T16:14Z

SPiN tack :)
vad gör htmlentities() ?

Permalänk: https://www.webforum.nu/p/747199

## #9 — SPiN, 2002-08-09T16:16Z

Fixar till "fula" tecken till deras entitet-motsvarigheter. T.ex. \< blir &amp;lt; och \> blir &amp;gt;, osv.

Du bör också formatera dina strängar med nl2br() för att användarna inte ska kunna infoga egna \\n ( Vagnreturer ) så att det blir fel i din textfil.

Permalänk: https://www.webforum.nu/p/747205

## #10 — Simpa, 2002-08-09T16:20Z

<http://simpa.aleborg.com/php/prata/prata.php>

Verkar funka fin fint :)
Hur räknar jag antalet tecken i en varibel?

Permalänk: https://www.webforum.nu/p/747210

## #11 — Simpa, 2002-08-09T16:21Z

aha det var så man gjorde det, satt precis och funderade på det ;)

Permalänk: https://www.webforum.nu/p/747212

## #12 — SPiN, 2002-08-09T16:30Z

strlen() returnerar antalet tecken på din sträng ( Som du skickar som parameter ).

```
$txt = "SPiN";
echo $txt . " innhåller " . strlen( $txt ) . " bokstäver." );
```

Permalänk: https://www.webforum.nu/p/747221

## #13 — Simpa, 2002-08-09T16:32Z

Tack igen :)

Får se om jag klarar av att göra en if sats med det där i, återkommer kanske ;)

Permalänk: https://www.webforum.nu/p/747225

## #14 — Simpa, 2002-08-09T16:45Z

Nu har jag kört ihop det igen,, ojoj vad jag ska krångla :D

```php
<?php
$jnamn = strlen( $namn );
$jmeddelande = strlen( $meddelande );
$gnamn = 15;
$gmeddelande = 70;
if ( $jnamn < $gnamn && $jmeddelande < $gmeddelande );{   
$filPekare = fopen( "e:/www/www.simpa.se/data/prata.txt", 'w+' );
if( !$filPekare )
     die( "Det blev nåt fel när filen skulle öppnas" );

fwrite( $filPekare, htmlentities( $_POST[ 'namn' ] ) . "\r\n" );
fwrite( $filPekare, htmlentities( $_POST[ 'meddelande' ] ) . "\r\n" );

fclose( $filPekare );
}

else{
echo " Något vart fel, namn: får inte innehålla mer än 15 tecken, och Meddelande får inte innehålla mer än 70 tecken" ;
}

?>
```

Gissar på att ifsatsen innehåller 4000 fel :e

Permalänk: https://www.webforum.nu/p/747236

## #15 — Simpa, 2002-08-09T16:46Z

felmeddelandet var: 
Parse error: parse error, unexpected T_ELSE in e:\\www\\www.simpa.se\\www\\php\\prata\\arbeta.php on line 16

Permalänk: https://www.webforum.nu/p/747239

## #16 — Matte, 2002-08-09T17:43Z

Vet inte hur du tänkt dig, men är det inte ett semikolon för mycket på den här raden:

```php
if ( $jnamn < $gnamn && $jmeddelande < $gmeddelande );{
```

Skulle rekommendera att du tar bort det.

Permalänk: https://www.webforum.nu/p/747267

## #17 — Simpa, 2002-08-09T18:29Z

Det hjälper inte.. :(

Permalänk: https://www.webforum.nu/p/747291

## #18 — Matte, 2002-08-09T19:10Z

Jag testade din kod några inlägg ovan och fick samma felmeddelande.

Sedan ändrade jag

```
if ( $jnamn < $gnamn && $jmeddelande < $gmeddelande );{
```

 till

```
if ( $jnamn < $gnamn && $jmeddelande < $gmeddelande ){
```

 och då fungerade det !

Vet inte varför det inte fungerade för dig.

Permalänk: https://www.webforum.nu/p/747312

## #19 — Simpa, 2002-08-09T19:18Z

Var ett problem med en ; men det har löst sej :)

Permalänk: https://www.webforum.nu/p/747318

## #20 — Simpa, 2002-08-09T19:18Z

oj Matte :) :)

det var jag som hade missförståt ditt inlägg, tack :)

Permalänk: https://www.webforum.nu/p/747319

---

Tråden på webben: https://www.webforum.nu/amne/php/49930-skriva-till-txt-fil
