Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 需要从数据库中的字符串中删除特殊字符_Php_Regex_Html_Csv - Fatal编程技术网

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

Php 需要从数据库中的字符串中删除特殊字符,php,regex,html,csv,Php,Regex,Html,Csv,我已将产品从csv文件导入数据库。对于产品名称,在存储产品时,我使用了addslashes()函数。在前端,我在显示产品名称时使用了stripslashes()函数 但对于某些产品,我在显示时会得到特殊字符,如何删除这些字符。我尝试了几乎所有的谷歌搜索结果。 这是链接 导入时,我使用如下查询: $insert_qry = "insert into is_product_info set product_name = '".addslashes($data['product_name'])."'

我已将产品从csv文件导入数据库。对于产品名称,在存储产品时,我使用了
addslashes()
函数。在前端,我在显示产品名称时使用了
stripslashes()
函数

但对于某些产品,我在显示时会得到特殊字符,如何删除这些字符。我尝试了几乎所有的谷歌搜索结果。 这是链接

导入时,我使用如下查询:

$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'])

您始终可以使用来阻止它们作为代码运行
或者你可以把它们注册出来

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

为什么不使用PDO、活动记录或任何提供可读和安全SQL语句的东西?您提供的将是您将来的维护工具。哎呀,缺少的a'-代码应该是
$product\u data['product\u name']=preg\u replace(“[^0-9a-zA-Z]+”,“$product\u data['product\u name]”)