---
title: "Komma problem"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/16108-komma-problem"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "jonne"
published: "2001-09-19T11:26:00.000Z"
updated: "2001-09-19T16:14:00.000Z"
replies: 7
views: 170
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/16108-komma-problem"
---

# Komma problem

## #1 — jonne, 2001-09-19T11:26Z

Använder en insertfunktion som ursprungligen kommer från phpportalen.net. Ser ut på fäljande sätt

```
function Insert($TBL, $FIELDS, $DATA) {
		$arr = explode(", ", $DATA);
		$resultat = implode("', '", $arr);
		$resultat = "'$resultat'";

		@mysql_query("INSERT INTO $TBL ($FIELDS) VALUES($resultat)")
			or die("Felaktig SQL-syntax!<br> <br>" . mysql_error() . "<br><br>" .$FIELDS. "<br>" .$DATA);
		$this->rows = @mysql_affected_rows();

		return true;
	}
```

Används på följande sätt:

```
$DB->Insert(
	"imgSources",  //Tabellnamn
	"imgsrcAgencyName, imgsrcDescription", //Kolumner i dbn
	"$ffAgency, $ffDesc" //Formfält
 	);
```

Problemet är nu att om jag i ffDesc har en text som ser ut såhär:
 Hej på er, alla glada 

så kommer ju ett fel att genereras eftersom texten innehåller komma-\>mellanslag.

Hur ska jag göra för att smidigast komma förbi detta?

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

## #2 — SPiN, 2001-09-19T11:51Z

Eftersom att det är jag som skrivit klassen så borde ju jag veta... ;)

Byt ut alla dina kommatecken i strängarna mot &#44;.

```
$str = "Hej på er, alla glada";
$str = str_replace(',', '&amp#44;', $str);
```

Eller ännu hellre, för att göra din kod säkrare:

```
$str = "Hej på er, alla glada";
$str = htmlentities($str);
```

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

## #3 — jonne, 2001-09-19T12:35Z

Undrar om jag förstod det där :)
Löste det iaf med att byta ut kommat mot & #44;

$str = "$ffDesc";
$str = str_replace(',', '& #44;', $str);	

Bra sätt?

\[r\] \*suck\* \[/r\]

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

## #4 — SPiN, 2001-09-19T13:11Z

Tja, eftersom att det var det jag föreslog så borde det vara ett bra sätt :e

Men använd htmlentities() om du vill vara säker på att andra tecken konverteras till HTML-koden för tecknen...

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

## #5 — jonne, 2001-09-19T13:15Z

Hmm.. konfunderad. Om jag använder htmlentities så kommer jag ju endå inte förbi detta problemet med att funktionen tolkar komma-\>mellanslag som att det ska vara ett nytt formfält. Eller :q

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

## #6 — SPiN, 2001-09-19T13:55Z

Njäe, htmlentities() ersätter alla "konstiga" tecken med dess motsvarighet i HTML.

Alltså:
, blir &#44;
& blir &
" blir &quote;
osv...

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

## #7 — nicclas, 2001-09-19T14:03Z

Nä, htmlentities() ersätter inte ",".

(Slutsats: Insertfunktionen suger ;) )

\[Redigerat av nicclas den 19 sep 2001\]

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

## #8 — SPiN, 2001-09-19T16:14Z

Gör den inte?? :o

Hmm... Jag trodde starkt på att den ersatte alla "konstiga" tecken... Aja, man kan juh använda str_replace().

Min funktion suger inte! Den känns bara lite överflödig, eftersom att den inte gör det lättare att lägga in information i databasen... :e

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

---

Tråden på webben: https://www.webforum.nu/amne/php/16108-komma-problem
