SoulGodMedlem sedan aug. 20051 200 inlägg Jag använder Youtube-embedded för en lösning i mitt filmarkiv nu,
och koden jag klipper in ser ut såhär:
<iframe class="youtube-player" type="text/html" width="480" height="385" src="http://www.youtube.com/embed/cOiegphgSQI" frameborder="0"></iframe>
Men koden som sparas i MySQL-databasen blir följande:
<iframe class=\"youtube-player\" type=\"text/html\" width=\"480\" height=\"385\" src=\"http://www.youtube.com/embed/cOiegphgSQI\" frameborder=\"0\"></iframe>
Jag har prövat att ändra fälttyp från VARCHAR till TEXT utan hjälp ..
Jag tror ( och har för mig ) att detta har något med UTF8 och liknande att göra,
men kommer inte på vad det är ...
Kan någon hjälpa mig? :(
colioneMedlem sedan juni 20014 421 inlägg Det är php som gör det. Det ser ut som du har magic_quotes påslaget, slå av det eller rensa datan med stripslashes när du plockar ut den.
c har rätt. Från PHP's manual:
<?php
echo get_magic_quotes_gpc(); // 1
echo $_POST['lastname']; // O\'reilly
echo addslashes($_POST['lastname']); // O\\\'reilly
if (get_magic_quotes_gpc()) {
$lastname = stripslashes($_POST['lastname']);
}
else {
$lastname = $_POST['lastname'];
}
// If using MySQL
$lastname = mysql_real_escape_string($lastname);
echo $lastname; // O\'reilly
$sql = "INSERT INTO lastnames (lastname) VALUES ('$lastname')";
?>
Alltså: Först kolla om magic quotes är påslaget. Om det är det, ta bort backslasharna. Kör sedan mysql_real_escape_string (eller dylikt) för att undvika SQL-injektioner. Vilket var anledningen till att magic quotes uppfanns, men dock kom man senare på att det dels inte hjälpte säkerheten såpass mycket och dels att det skpade irritation. Så fr.o.m. PHP 5.3 så är funktionen borttagen. Och dessutom kan det vara avstängd av webbhotellet. Därav behovet att kolla om funktionen är aktiv.
För mer info, kolla de fyra länkarna överst på denna sida: http://php.net/manual/en/security.magicquotes.php
SoulGodMedlem sedan aug. 20051 200 inlägg Tack så jättemycket.
Stämde precis att det var Magic Quotes som var på ..
Tack både Colione & nitro2k01 för svaren :)