Oprettet man. d. 29. oktober 2012 kl. 16:38:17

KHHP
KHHP (8.891 point. Point ude: 255)

Server laver escaping af de forkerte ting

Hej
Jeg har fornylig bemærket en fejl på min side, hvor serveren laver escaping af links og javascript, som bliver gemt i databasen. Jeg har forsøgt at fjerne javascriptet, og dette virker også, men den laver stadig escaping af mine links, divs, javascript osv.
Jeg har dog fixet problemet fra phpmyadmin, men det er jo ikke noget der holder i længden. Jeg har ikke rettet fejlen for at I kan se hvad den helt præcist gør.
Fejlen kan ses her: http://khansen-it.dk/ (...)
Hvis I holder musen hen over de to links nederst på siden, så kan I se problemet.
Jeg har lagt mit script der opdaterer indholdet her: http://pastebin.com/ (...)
Jeg ved at min webhost for nylig har flyttet nogle af deres servere for at forbedre ydelsen, men det kunne jo være at der var en fejl i min kode der gør at problemet opstår. Dog kan jeg ikke se at der skulle være nogen fejl. Såfremt fejlen ikke ligger i min kode, så må jeg jo blot have fat i min webhost for at se hvad de siger til problemet.
Blot for at udelukke et problem i min connection-fil, så er den her indtastet med demo værdier: http://pastebin.com/ (...)

Skrevet man. d. 29. oktober 2012 kl. 16:44:44| #1

Nu har jeg ikke kigget på hverken side eller kode, men umiddelbart lyder det som om du bare skal adde en stripslashes, der hvor du kalder på dine ting:

http://www.php.net/ (...)

Skrevet man. d. 29. oktober 2012 kl. 17:58:34| #2

olebole
olebole (216.733 point)
<ole>

Jeg tror, dine problemer skyldes noget andet. Prøv lige denne kode, som burde udskrive et korrekt link, hvis du skriver noget tekst med et link i TEXTAREA'et:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/ (...)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>
<body>

<p>
<?php
if (!empty($_POST)) {
    $db = new mysqli('SERVER', 'USER_NAME', 'PASS_WORD', 'DATABASE');
   
    $db->query("CREATE TABLE `baz` (`tekst` VARCHAR(255) NOT NULL) COLLATE='utf8_danish_ci' ENGINE=InnoDB");
   
    $stmt = $db->prepare('INSERT INTO `baz` SET `tekst`=?');
    $stmt->bind_param('s', $_POST['tekst']);
    $stmt->execute();
    $stmt->close();
   
    $res = $db->query('SELECT * FROM `baz`');
    $row = $res->fetch_array(MYSQLI_ASSOC);
    $res->free();
   
    $db->query("DROP TABLE `baz`");
   
    $db->close();
   
    echo $row['tekst'];
}
?>
</p>

<form action="" method="post">
<p><textarea name="tekst" cols="50" rows="20"></textarea></p>
<p><button type="submit">Send</button></p>
</form>

</body>
</html>

/mvh
</bole>

Skrevet man. d. 29. oktober 2012 kl. 18:02:40| #3

olebole
olebole (216.733 point)
Prøv lige at skrive dette i en tom PHP-fil:

<?php phpinfo() ?>

- og søg efter magic_quotes_gpc. Den skulle meget gerne være sat til Off

Skrevet man. d. 29. oktober 2012 kl. 18:10:31| #4

olebole
olebole (216.733 point)
Er magic_quotes sat til On - og du ikke har adgang til php.ini - kan du skrive dette øverst i alle dine dokumenter:

<?php
ini_set('magic_quotes_gpc', 0);

// resten af din kode
?>

- men det er noget rod. Det bør helt klart sættes i php.ini

Skrevet man. d. 29. oktober 2012 kl. 18:41:58| #5

KHHP
KHHP (8.891 point)
magic_qoutes_gpc var sat til On.
Jeg har forsøgt det ole foreslog i #2 og det gav et resultat der så således ud:
<a href=\"admin/opret.php\">Dette er en test</a>

Normal tekst har den ingen problemer med.
Jeg har forsøgt med ini_set('magic_qoutes_gpc',0); i det test dokument fra #2. Det giver samme resultat.
<a href=\"index.php\">Dette er igen en test</a>

Men hvis det har virket inden de ændrede på deres servere, så kan det jo være en fejl. Så måske burde jeg kontakte dem alligevel.

Skrevet man. d. 29. oktober 2012 kl. 19:18:10| #6

olebole
olebole (216.733 point)
Hmmm ... jeg kan nu heller ikke slå det til og fra med den linje på min lokale server  =)

Anyway, så bør du helt klart forlange af udbyderen, at han ændrer opsætningen. Det hører ikke til i moderne PHP. Hvis de brokker sig, så send dem dette link. Hvem har du som udbyder?

Skrevet man. d. 29. oktober 2012 kl. 19:23:51| #7

KHHP
KHHP (8.891 point)
Har Meebox.

Skrevet man. d. 29. oktober 2012 kl. 20:49:26| #8

olebole
olebole (216.733 point)
Jeg har ikke personlig erfaring med dem, men prøv at skrive til dem  =)

Skrevet tir. d. 30. oktober 2012 kl. 22:09:52| #9

KHHP
KHHP (8.891 point)
Har i dag skrevet til meebox og forklaret problemet. De svarede hurtigt tilbage og sagde at selvfølgelige skulle magic_qoutes_gpc være slået fra og de ændrede det straks.

@olebole: Jeg går ud fra at jeg blot selv skal lukke spørgsmålet da du vel som sædvanligvis ikke samler på point?

Skrevet tir. d. 30. oktober 2012 kl. 22:16:32| #10

olebole
olebole (216.733 point)
Andet ville også undre mig. De virker ret professionelle  =)

Præcis! Jeg er zq for kedelig til at finde på noget nyt  *D

Skrevet tir. d. 30. oktober 2012 kl. 22:19:46| #11

olebole
olebole (216.733 point)
Det ville da også være en grum gang skæbnens ironi, hvis du ikke kunne få det slået fra, når du nu har slidt med at få lært prepared statements  *o)

Skrevet ons. d. 31. oktober 2012 kl. 14:42:49| #12

KHHP
KHHP (8.891 point)
Ja. det har du ret i.
Så lukker og slukker jeg for denne gang. Og nok en gang tak for hjælpen.

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

Hjælp til database kolonne

Oprettet den 22. maj 2013 kl. 17.44
StotheT giver 30 point for svar | Giv et svar »

opret tabel og insert

Oprettet den 22. maj 2013 kl. 14.10
agent_qa giver 60 point for svar | Giv et svar »

WordPress husker stadig gamle stier, efter skift af URL

Oprettet den 22. maj 2013 kl. 14.08
w13 giver 70 point for svar | Giv et svar »

Seneste guides

Slettet
Håndtering af tekstoversættelse i...
Parameteriseret tekstformatering i C#
C++ Historie og Programmering - Del 1







Tips & Tricks fra PC World

Teaser billede

Her er seks Google Labs-funktioner, som du skal slå til med det samme

Gmail Labs giver dig adgang til en masse smarte funktioner, som Googles ingeniører leger med i øjeblikket.


Anmeldelser fra PC World

Teaser billede

Test: Samsung Galaxy S4 er et hit - trods gøglertricks

Kan Samsung beholde førertrøjen i det store Android-race? Galaxy S4 er smækfyldt med innovative funktioner, men også med en del gøgl. Er det for meget? Få vores dom over Samsungs nye topmodel.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Nu kan du få 1 terabyte gratis plads hos Flickr

Yahoo har relanceret sin fototjeneste Flickr med 1 terabyte gratis plads til brugernes billeder og videoer.


Nyheder fra Computerworld

Teaser billede

Galleri: Her er de vigtigste programmører

Computerhistorien har fra hulkort til JavaScript været drevet frem af mange forskellige typer programmører. Se de vigtigste typer her. Er du en af dem?


IT Kurser
Samarbejdspartnere

Udgiver · © 2013 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger