---
title: "CSS-klasser ignoreras???"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/110959-css-klasser-ignoreras"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "aasah"
published: "2004-09-06T18:19:24.000Z"
updated: "2004-09-06T20:17:51.000Z"
replies: 8
views: 329
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/110959-css-klasser-ignoreras"
---

# CSS-klasser ignoreras???

## #1 — aasah, 2004-09-06T18:19Z

Möjligen borde det här postas i CSS-forumet, är osäker som vanligt...

Jag har ett registreringsskript som stoppar in nya users i en tabell. För att förhindra att man av misstag försöker köra samma postdata omigen försöker jag för ögonblicket skicka iväg ev positiv feedback till ett speciellt skript som skriver ut det man skickar in. Enligt [detta](http://www.webforum.nu/showthread.php?s=&postid=910478#post910478) tips. Alltså, om inserten gick bra så kommer denna glada info från en ny sida.

Problemet är bara att trots att den ivägskickade strängen specificerar CSS-klasser som ger färg på texten, så skrivs texten ut i svart??? Eftersom dessa "class-anrop" finns med i källan fattar jag inte varför det inte funkar...   :x 

Nedan följer lite relevanta kodsnuttar:

> **sidans källa skrev:**
>
> //....
> \<style type="text/css"\>
> \<!--
> //...
> .karm {
>   color: #DC143C;
> }
> 
> .gold {
>   color: #FFCC00;
> }
> //...
> \--\>
> \</style\>\</head\>
> \<body\>\<P class=\\"karm\\"\>Successfully created 1 new visitor (Anna)!\</P\>
> \<h2 class=\\"gold\\"\>Currently this is all registered users\</h2\>
> \<P class=\\"karm\\"\>Eva since 2004-08-12\<BR\>
> Anna since 2004-09-06\<BR\>\</P\>

 (Radbrytena har jag lagt in här för att öka läsbarheten.)

> **sidans URL skrev:**
>
> http://www.tydal.nu/aasah/message.php?Adv=\<P%20class="karm"\>
> Successfully%20created%201%20new%20visitor%20(Anna)!\</P\>
> \<h2%20class="gold"\>Currently%20this%20is%20all%20registered%20users\</h2\>
> \<P%20class="karm"\>Eva%20since%202004-08-12\<BR\>
> Anna%20since%202004-09-06\<BR\>\</P\>

 (Radbrytena har jag lagt in här för att öka läsbarheten.)

PHP-koden som skickar iväg det:

```php
      $message = "<P class=\"karm\">Successfully created " . 
mysql_affected_rows() . " new visitor (".$anvNamn.")!</P>";
$qNew = "SELECT Namn, RegD FROM User";
$res = mysql_query($qNew) or die("$sorry ");
$message .= "<h2 class=\"gold\">Currently this is all 
registered users</h2><P class=\"karm\">";
while ($row = mysql_fetch_array($res))
         $message .= "$row[0] since $row[1]<BR>";
$message .= "</P>";
header("Location: message.php?Adv=".$message);
```

 Och dito som tar hand om det:

```php
//I message.php
if (isSet($_GET["Adv"]))
   echo $_GET["Adv"]."<BR>";
else echo "<P class=\"karm\">".$_GET["mess"]."<BR></P>";
printCopyright("b");
```

Någon som begriper varför det inte funkar??? :q

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

## #2 — Matte, 2004-09-06T18:25Z

I och för sig borde det ganske räckt med att skicka iväg variablerna, och haft övrig HTML-kod i message.php, men du har väl dina skäl.

Testa att köra din variabel $message genom [urlencode](http://se2.php.net/manual/en/function.urlencode.php) innan du lägger dit den på URL-en.

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

## #3 — Peeer, 2004-09-06T18:31Z

```
<body>[...]<P class=\"karm\">Successfully created 1 new visitor (Anna)!</P>[...]
```

Är det html-koden som ser ut så, så är det inte konstigt att det inte fungerar. Plocka bort dina \\ framför citattecknen så fungerar det kanske bättre?

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

## #4 — aasah, 2004-09-06T18:58Z

Var ända in i glödheta... kommer de \\" ifrån??? Har ändrat men de försvinner inte...?

> **sidans källa skrev:**
>
> \<body\>\<P class=\\"karm\\"\>Successfully created 1 new visitor (HHHHH)!\</P\>
> \<h2 class=\\"gold\\"\>Currently this is all registered users\</h2\>
> \<P class=\\"karm\\"\>Eva since 2004-08-12\<BR\>
> Karin since 2004-09-06\<BR\>
> Anna since 2004-09-06\<BR\>
> Johan since 2004-09-06\<BR\>
> HHHHH since 2004-09-06\<BR\>\</P\>

Antalet dummy-users bara växer... Radbrytningar åter inlagda för läsbarhetens skull.

```php
$message = '<P class="karm">Successfully created ' . mysql_affected_rows() . 
' new visitor ('.$anvNamn.')!</P>';
$qNew = "SELECT Namn, RegD FROM User";
$res = mysql_query($qNew) or die("$sorry ");
$message .= '<h2 class="gold">Currently this is all registered 
users</h2><P class="karm">';
while ($row = mysql_fetch_array($res))
         $message .= "$row[0] since $row[1]<BR>";
$message .= "</P>";
header("Location: message.php?Adv=".urlencode($message));

//message.php
if (isSet($_GET["Adv"]))
   echo urldecode($_GET["Adv"])."<BR>";  //utgår ifrån att decode behövs?
else echo "<P class=\"karm\">".$_GET["mess"]."<BR></P>";
```

Fattar om möjligt ännu mindre nu...  :x

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

## #5 — Peeer, 2004-09-06T19:06Z

Det är inte så att du har "magic_quotes_gpc" aktiverat i php.ini? Isåfall lägger php själv till backslash framför dina citattecken. Kör dina strängar genom stripslashes() innan du skriver ut dem och se om det fungerar bättre. :)

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

## #6 — aasah, 2004-09-06T19:22Z

Ååååh!!! Tusen tack, Peeer! :birp 

Kan det vara farligt att plocka bort dessa slashes före ett echo??? Alltså, kan det öppna för ett säkerhetshål??? :q :o

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

## #7 — Peeer, 2004-09-06T19:38Z

Inte vad jag vet. Däremot bör du köra htmlentities() på all data du skriver ut som du hämtar från adressfältet. Man skulle ju kunna trycka in ett javascript i url'en och då har du ett säkerhetshål!

Fast kör du htmlentities på strängarna så kommer du ju inte kunna skicka htmlkod genom dem (som du gör nu).

[Intressant länk](http://swesecure.com/?ID=dc6ea60a-12ae-4e7e-9e9c-59489ccafa90&IID=436d5180-8909-4aa2-baee-7c8f925d6eab)

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

## #8 — aasah, 2004-09-06T19:46Z

> **Peeer skrev:**
>
> ... Fast kör du htmlentities på strängarna så kommer du ju inte kunna skicka htmlkod genom dem (som du gör nu).
> 
> [Intressant länk](http://swesecure.com/?ID=dc6ea60a-12ae-4e7e-9e9c-59489ccafa90&IID=436d5180-8909-4aa2-baee-7c8f925d6eab)

Tack vare denna mycket intressanta länk kommer jag att lösa min vidareskickning på annat sätt så att jag kan slänga in htmlentitities. TACK, Peeer!!! :D

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

## #9 — aasah, 2004-09-06T20:17Z

Borde inte detta lösa problemet: 

```php
//message.php
if (strpos($_GET["mess"], "<"))
   echo "This string contains values best ignored. :-(";
else echo "<P class=\\"karm\\">".$_GET["mess"]."<BR></P>";
```

??? :q Eller kan fula saker stoppas in utan ett "\<" ?

(Jag skickar inte längre HTML-taggar med den.)

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

---

Tråden på webben: https://www.webforum.nu/amne/php/110959-css-klasser-ignoreras
