---
title: "Radbrytning i textarea"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/185858-radbrytning-i-textarea"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "emton"
published: "2011-01-20T09:35:16.000Z"
updated: "2011-01-21T07:11:35.000Z"
replies: 14
views: 1827
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/185858-radbrytning-i-textarea"
---

# Radbrytning i textarea

## #1 — emton, 2011-01-20T09:35Z

Har ett formulär som har en textruta. När detta sen ska visas på sidan så blir allt i en enda lång rad trots att man har tryckt enter flera gånger. Förmodar att man ska använda nl2br men får det inte att funka. Här är koden som hämtar och visar en annons.

```php
$sql = "SELECT * FROM annonser WHERE godkand = 1 AND val = 'saljes' ORDER BY date DESC";
	$sql_result = mysql_query ($sql) or die ("Query error.");
	
	echo "<table>";
	while ($row = mysql_fetch_assoc ($sql_result)) {
			echo "<tr><td id='overskrift'><b>" . $row['overskrift'] . "</b></td></tr>";
			echo "<tr><td>" . $row['annonstext'] . "</td></tr>";
			echo "<tr><td id='pris'>" . "<b>Pris: </b>" . $row['pris'] . "</td></tr>";
			echo "<tr><td>" . $row['genbanksnr'] . "</td></tr>";
			echo "<tr><td>" . $row['fnamn'] . " " . $row['enamn'] .  ", " . $row['ort'] ."</td>";
			echo "<tr><td>" . $row['tele'] . "</td></tr>";
			echo "<tr><td>" . $row['mobil'] . "</td></tr>";
			echo "<tr><td>" . $row['epost'] . "</td></tr>";
			echo "<tr><td>" . $row['websida'] . "</td></tr>";
			echo "<tr><td>" . $row['date'] . "</td></tr>";
			echo "<tr><td id='blank'></td></tr>";
			
			
	}
	echo "</table>";
```

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

## #2 — GunnarD, 2011-01-20T09:40Z

Du borde kunna skriva:

```php
echo "<tr><td>" . nl2br($row['annonstext']) . "</td></tr>";
```

Förutsatt att du inte tagit bort radbrytningen när du skriver in det i databasen.

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

## #3 — emton, 2011-01-20T09:52Z

Precis, helt perfekt! Tack!

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

## #4 — emton, 2011-01-20T10:15Z

> **[GunnarD skrev:](https://www.webforum.nu/p/1527597)**
>
> Du borde kunna skriva:
>
>
> ```php
> echo "<tr><td>" . nl2br($row['annonstext']) . "</td></tr>";
> ```
>
> 
> Förutsatt att du inte tagit bort radbrytningen när du skriver in det i databasen.

Fast det hjäpte inte i mailet....Får inte in nl2br där heller. 

```php
mail('mailadressen' , 'Ny annons ' , $annonstext ,'FROM: '.$fnamn.','.$enamn.'');
```

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

## #5 — voigtann1, 2011-01-20T10:19Z

Var innehåller variablen $annonstext då?

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

## #6 — emton, 2011-01-20T10:29Z

> **[voigtann1 skrev:](https://www.webforum.nu/p/1527601)**
>
> Var innehåller variablen $annonstext då?

Här är det som lägger in i databasen och samtidigt skickar mail om nytt inlägg.

```php
$fnamn = mysql_real_escape_string($_POST['fnamn']);
$enamn = mysql_real_escape_string($_POST['enamn']);
$tele = mysql_real_escape_string($_POST['tele']);
$mobil = mysql_real_escape_string($_POST['mobil']);
$epost = mysql_real_escape_string($_POST['epost']);
$websida = mysql_real_escape_string($_POST['websida']);
$genbanksnr = mysql_real_escape_string($_POST['genbanksnr']);
$val = mysql_real_escape_string($_POST['val']);
$pris = mysql_real_escape_string($_POST['pris']);
$overskrift = mysql_real_escape_string($_POST['overskrift']);
$annonstext = mysql_real_escape_string ($_POST['annonstext']);
$ort = mysql_real_escape_string($_POST['ort']);
$date = mysql_real_escape_string($_POST['date']);
$date = date("Y-m-d"); 

mail('mailadress' , 'Ny annons ' , $annonstext ,'FROM: '.$fnamn.','.$enamn.'');
$sql = "INSERT INTO annonser (fnamn, enamn, tele, mobil, epost, websida, genbanksnr, val, pris, overskrift, annonstext, ort, date) VALUES ('$fnamn','$enamn','$tele','$mobil','$epost','$websida','$genbanksnr','$val','$pris','$overskrift','$annonstext','$ort',NOW())";
```

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

## #7 — voigtann1, 2011-01-20T10:32Z

Ja, klart att det inte fungera ;)

du säger ju bara innehållet skall vara $\_POST innehållet, där har du ju inte \<br\> element utan vanliga radbrytningar:

```
mail('mailadressen' , 'Ny annons ' , nl2br($annonstext) ,'FROM: '.$fnamn.','.$enamn.'');
```

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

## #8 — GunnarD, 2011-01-20T10:32Z

Glöm det, svarade fel p.g.a fel info :)

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

## #9 — emton, 2011-01-20T10:37Z

Nja, det blir fortfarande \\r\\n i stället för radbrytning.

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

## #10 — emton, 2011-01-20T10:40Z

Nu var jag för snabb....Det blir tomt i mailet där annonstexten skulle stå. men det kan väl inte vara row...

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

## #11 — emton, 2011-01-20T10:56Z

> **[voigtann1 skrev:](https://www.webforum.nu/p/1527604)**
>
> Ja, klart att det inte fungera ;)
> 
> du säger ju bara innehållet skall vara $\_POST innehållet, där har du ju inte \<br\> element utan vanliga radbrytningar:
> 
>
>
> ```
> mail('mailadressen' , 'Ny annons ' , nl2br($annonstext) ,'FROM: '.$fnamn.','.$enamn.'');
> ```

Har redan försökt skriva så men det blir fortfarande \\r\\n i stället för radbrytning då.

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

## #12 — @nders, 2011-01-20T11:39Z

skulle tippa på att mysql_real_escape_string kodar om \\r\\n - prova gå direkt på $\_POST.

```php
mail('mailadressen' , 'Ny annons ' , nl2br($_POST['annonstext']) ,'FROM: '.$fnamn.','.$enamn.'');
```

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

## #13 — emton, 2011-01-20T11:52Z

> **[@nders skrev:](https://www.webforum.nu/p/1527612)**
>
> skulle tippa på att mysql_real_escape_string kodar om \\r\\n - prova gå direkt på $\_POST.
>
> ```php
> mail('mailadressen' , 'Ny annons ' , nl2br($_POST['annonstext']) ,'FROM: '.$fnamn.','.$enamn.'');
> ```

Nä, nu då skickar den inget mail alls.

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

## #14 — GunnarD, 2011-01-20T11:58Z

Stämmer, mysql_real_escape_strin() gör om \\n, \\r och \\l till \\\\n, \\\\r och \\\\l. Det är därför du ser ex. \\n istället för radbrytningen.

Finns två lösningar, antingen den som @anders skriver eller så får ersätta alla \\\\ med \\.

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

## #15 — emton, 2011-01-21T07:11Z

Just nu skickas inga mail alls :(. Begriper inte varför. Vad kan man kolla efter? Hittar inget fel i denna kod. Någon annan som gör det?

```php
mail('mailadressen' , 'Ny annons!' , $annonstext ,'FROM: '.$fnamn.'');
```

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

---

Tråden på webben: https://www.webforum.nu/amne/php/185858-radbrytning-i-textarea
