Avatar billede korsgaard32 Nybegynder
24. marts 2011 - 09:54 Der er 2 kommentarer og
1 løsning

PHP / MySQL Insert problem

Jeg skal inserte noget information i en MySQL database til visning af en Google map.

Koden er en IFrame med visning af et kort. Men af uransagelige årsager, nægter det at virke. Skriver jeg almindelig tekst i feltet, virker det fint. Sætter jeg Google maps koden direkte ind i databasen, virker det også fint. Jeg kan bare ikke få lov at sætte ind via mit lille admin modul.

Feltet i DB er af typen text

Kan jeg på en måde "pakke det ind", iden jeg sætter det ind i databasen, så denne acceptere?

Koden jeg vil sætte ind:

<iframe width="400" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=da&amp;geocode=&amp;q=St.+James's+Club,+Antigua,+Antigua+and+Barbuda&amp;aq=0&amp;sll=18.657305,-68.681717&amp;sspn=0.482715,0.979156&amp;ie=UTF8&amp;hq=St.+James's+Club,&amp;hnear=Antigua&amp;cid=14756835914042088156&amp;ll=17.013454,-61.733551&amp;spn=0.057452,0.068665&amp;z=13&amp;iwloc=A&amp;output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=q&amp;source=embed&amp;hl=da&amp;geocode=&amp;q=St.+James's+Club,+Antigua,+Antigua+and+Barbuda&amp;aq=0&amp;sll=18.657305,-68.681717&amp;sspn=0.482715,0.979156&amp;ie=UTF8&amp;hq=St.+James's+Club,&amp;hnear=Antigua&amp;cid=14756835914042088156&amp;ll=17.013454,-61.733551&amp;spn=0.057452,0.068665&amp;z=13&amp;iwloc=A" style="color:#0000FF;text-align:left">Vis stort kort</a></small>
Avatar billede Debillus Nybegynder
27. marts 2011 - 11:44 #1
addslashes og stripslashes ved insert og efterfølgende select bør løse problemet.

Brug f.eks. en funktion som denne til at "preppe" værdier du smider afsted i din INSERT/UPDATE.

function dbprep($value) {

    $value = trim($value);

    if (get_magic_quotes_gpc())
        $value = stripslashes($value);

    if (!is_numeric($value))
        $value = "'" . mysql_real_escape_string($value) . "'";

    return $value;
}


Og brug den i stil med :

$sql = sprintf(
    "UPDATE [..] SET iframe_contents=%s WHERE [..]",
    dbprep($iframe_contents));
$db->sql_query($sql) or die;
Avatar billede korsgaard32 Nybegynder
06. april 2011 - 10:50 #2
Det virker perfekt, data bliver nu fint gemt i databasen, men når jeg trækker data ud på siden, så fatter browseren ikke der er et kort og viser bare dn rå kode. Skal jeg på nogen måde formatere ved udlæsning?
Avatar billede korsgaard32 Nybegynder
06. april 2011 - 10:57 #3
Koden på siden kommer blot ud sådan her:

<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src=" http://maps.google.dk/maps?hl=da&amp;ie=UTF8&amp;ll=55.887635,11.228027&amp;spn=9.773332,33.728027&amp;z=6&amp;output=embed"></iframe><br /><small><a href="http://maps.google.dk/maps?hl=da&amp;ie=UTF8&amp;ll=55.887635,11.228027&amp;spn=9.773332,33.728027&amp;z=6&amp;source=embed">Vis stort kort</a></small>

Og ikke som et kort
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester