1

How can you store html code in a mysql database? I can find everywhere where people can do it, but noone says how. I know i need to strip the data using "mysqli_real_escape_string" played with the example but have NO idea how to actually do it. I simply placed the code as shown below but it just game me an error. I know its because the HTML code has "" but i need those to be loaded when the page loads so how do i insert the code into the database? A link or something would be amazing.

EDIT: Here is the full code, its not entering the information into the database, but is not giving any errors.

<?php
    include_once('global.php');

    $city = ("<div id='body_sidebar'>
        <ul>
            <li class='sidebar_service_space'>&nbsp;</li>
            <li class='sidebar_service_title'>About Malware</li>
            <li><a href='<?php echo '$home' ?>/services/malware/what-is-malware.html'>What is Malware?</a></li>
            <li><a href='<?php echo '$home' ?>/services/malware/common-signs.html'>Common Signs of Malware</a></li>
            <li class='sidebar_service_space'>&nbsp;</li>

            <li class='sidebar_service_title'>Malware Removal</li>
            <li><a href='<?php echo '$home' ?>/services/malware/virus-removal.html'>Virus Removal</a>
                <a class='tooltip' href='/knowledge_base/virus_removal.php'><img id='viruses' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Viruses</em>
                    The computer virus is the most infamous form of malware. It is a self replicating program that infects a system without authorization. Once installed, it will execute itself, infect system files, and attempt to propagate to other systems. The impact of a virus ranges widely from slow system performance to wiping out every file on your computer. <br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>

            <li><a href='<?php echo '$home' ?>/services/malware/worm-removal.html'>Worm Removal</a>
                <a class='tooltip' href='/knowledge_base/worm_removal.html'><img id='worm' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Worms</em>
                    A computer worm is a self-replicating computer program. It uses a network to send copies of itself to 
    other computers on the network and it may do so without any user intervention. Worms usually exploit a 
    known or zero-day vulnerability that allows them to execute their copies on computers on the same 
    network.<br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>

            <li><a href='<?php echo '$home' ?>/services/malware/adware-removal.html'>Adware Removal</a>
                <a class='tooltip' href='/knowledge_base/adware_removal.html'><img id='adware' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Adware</em>
                    Adware is a program that causes the host computer to display advertisements that the user did not request. These are frequently in the form of pop-up ads that appear while browsing the Internet and pop-under ads that open in a window hidden beneath the Internet browser's window, according to security4web.com. Another version of adware is a toolbar that attaches to an Internet browser search ability.<br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>

            <li><a href='<?php echo '$home' ?>/services/malware/spyware-removal.html'>Spyware Removal</a>
                <a class='tooltip' href='/knowledge_base/spyware_removal.html'><img id='spyware' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Spyware</em>
                    Spyware collects information from a host computer and sends it to the creator of the program. Spyware can infect a computer as a result of surfing a website that installs it or even as part of programs a user knowingly downloads to use for a different purpose, according to security4web.com. The website notes that freeware (free software) and Internet links advertising spyware-removal programs frequently install spyware.<br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>

            <li><a href='<?php echo '$home' ?>/services/malware/rootkit-removal.html'>Rootkit Removal</a>
                <a class='tooltip' href='/knowledge_base/rootkit_removal.html'><img id='spyware' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Rootkit</em>
                    Rootkits can make it difficult to discover that your computer has been infected by other types of malware. According to h-online.com, a rootkit manipulates files so they are difficult to discover on your computer. This makes it a challenge to find out if a malware process or file is running in the background on your computer because a rootkit program may be preventing you from finding it by browsing folders or searching on your computer file system.<br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>

            <li><a href='<?php echo '$home' ?>/services/malware/trojan-removal.html'>Trojan Horse Removal</a>
                <a class='tooltip' href='/knowledge_base/trojan_removal.html'><img id='spyware' src='<?php print'$style_images' ?>/question.jpg' />
                <span class='custom info'><img src='<?php print'$style_images' ?>/info.png' alt='Information' height='48' width='48' />
                <em>Trojan Horse</em>
                    A trojan horse is unlike a virus or a worm because it cannot replicate itself, according to spamlaws.com. Instead, it executes itself, and the execution of the file can install additional forms of malware, such as viruses or worms. It can also delete files, eliminate access to specific websites and damage files on the computer.<br /><br />
                    <font style='text-align:right; padding-left:150px; margin-top:15px;'>Click the icon for more information...</font></span></a></li>
            <li class='sidebar_service_space'>&nbsp;</li>
        </ul>
        <span id='sidebar_contactus'>Contact Us</span>
        <span id='sidebar_findus'>Find Us</span>
        <hr />
        <div id='sidebar_quote'>
            <div id='sidebar_quote_text'>This is a small quote about someone loving who we are and what we do so they are praising us cuz well we are awesome.</div>
        </div>
        <div id='sidebar_quote_arrow'>
            <div id='sidebar_quote_cite'>
            Steven Hawkings
            Intelectual Badass
            <a href='#'>hiswebsite</a>
            </div>
        </div>

    </div>");

    $city = mysqli_real_escape_string($cnx, $city);

    /* this query with escaped $city will work */
    if (mysqli_query($cnx, "INSERT into services (template_name, template_code) VALUES (sidebar_malware, '$city')")) {
        printf('%d Row inserted.\n', mysqli_affected_rows($cnx));
    }

    mysqli_close($cnx);
    ?>
Nick W.
  • 1,536
  • 3
  • 24
  • 40
  • 1
    What error are you getting? Also, [The Great Escapism (Or: What You Need To Know To Work With Text Within Text)](http://kunststube.net/escapism/). – deceze Jun 19 '12 at 09:39
  • And what is the error you get? – Dirk de Man Jun 19 '12 at 09:40
  • 1
    *I know i need to strip the data using "mysqli_real_escape_string"* — No, that function escapes data, it doesn't strip it, and you should use [bound arguments](http://stackoverflow.com/a/60496/19068) and not manual escaping. – Quentin Jun 19 '12 at 09:44

2 Answers2

1

Test strings in the VALUES must be encapsulated in quotes, wrap some quotes around your template name value

if (mysqli_query($cnx, "INSERT into services (template_name, template_code) VALUES ('sidebar_malware', '$city')")) {

Look up how to output mysql errors, they would have helped you debug this issue.

Lee
  • 10,496
  • 4
  • 37
  • 45
-1

Use htmlentities($city);

It will convert tags <a>, <img>, <b>, .. to HTML entities.

harisdev
  • 4,146
  • 5
  • 19
  • 25
  • That's completely missing the point of storing HTML in the database, then you'd just be storing garbage in the database. – deceze Jun 19 '12 at 10:37
  • This would work and then when you pull it from the data base you would rung in through `html_entity_decode` see http://php.net/manual/en/function.html-entity-decode.php – JD Vangsness May 22 '16 at 01:58