Joomla数据库在数据库输入之前过滤文本输入

时间:2017-04-29 13:49:46

标签: ajax mysqli joomla

我现在已经尝试解决这个问题大约4个小时了,我想我做的事情是愚蠢的,我无法看到。

我使用com_ajax的joomla模块,效果很好。我可以将东西发送到辅助函数,并将其放入并从数据库中检索它。

但是我发现我不能用单引号输入任何东西,所以输入马克的名字就不会有用了!

我认为逃跑是由joomla处理的,但我猜不是。所以我一直试图让它正确地逃避字符串,以便它可以放入数据库。我已经经历了很多选择,但无法弄明白。帮助程序中的简化数据库部分现在显示为:

            $link = mysqli_connect("localhost", "username", "password", "database");    

            /* check connection */
            if (mysqli_connect_errno()) {
                printf("Connect failed: %s\n", mysqli_connect_error());
                exit();
            }
            $visitorfirstname = mysqli_real_escape_string($link, "Mark's child");

            $db = JFactory::getDbo();
            $query = "UPDATE `j3_roombooking_visitordetails`SET `visitorfirstname` = '".$visitorfirstname."' WHERE `j3_roombooking_visitordetails`.`id` = ".$visitorid."";
            $db->setQuery($query);
            $results = $db->loadObjectList();

我收到的错误表明马克对马克的改变

我在Joomla之外尝试了它作为一个简单的脚本,它很好地逃脱了它,即马克已经准备好了数据库。

我可以尝试的任何建议或我从Joomla错过的东西?

0 个答案:

没有答案