需要从数据库中删除字符串中的特殊字符

时间:2014-02-21 18:12:30

标签: php regex html5 csv

我有从csv文件导入数据库的产品。对于产品名称,在存储产品时,我使用的是addslashes()功能。在前端,我在显示产品名称时使用stripslashes()功能。

但是对于某些产品,我在显示时会收到特殊字符,如何删除它们。我尝试了几乎所有Google搜索结果。 这是链接http://www.industrialstores.com/search_results/WD-40/46

导入时,我使用的是这样的查询:

$insert_qry = "insert into  is_product_info set product_name = '".addslashes($data['product_name'])."',
                                                    sku = '".addslashes($data['sku'])."',
                                                    friendly_url = '".addslashes($friendly_url)."',
                                                    vendor = '".$data['vendorid']."',
                                                    manufacturer = '".$data['brandid']."',
                                                    retail_price = '".$data['price']."',
                                                    wholesale_price = '".$data['cost_price']."',
                                                    status = '".$data['available']."',
                                                    image = '".addslashes($image_name)."',
                                                    short_description = '".addslashes($data['teaser'])."',
                                                    tax = '".$data['product_taxable']."',
                                                    added_by='".$rs_employee_added['userId']."',
                                                    creation_date='".$today_date."',
                                                    added_by_name='".$rs_employee_added['firstname']. ' '. $rs_employee_added['lastname']."'";

在显示时,像这样stripslashes($product_data['product_name']);

1 个答案:

答案 0 :(得分:0)

您始终可以使用htmlspecialchars()来阻止它们作为代码运行 或者你可以注销它们。

$product_data['product_name'] = preg_replace('[^0-9a-zA-Z]+, '', $product_data['product_name']);