需要转义一下。有几个办法:
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的卓尼网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
1,最简单,把一些危险字符过滤掉,比如英文的单引号,双引号等;
2,使用addslashes在php中进行转义,自己处理;
3,可以使用一些现成的处理方法,比如uchome自带的getstr。这样的好处就是对各种可能出现的情况处理比较好。
数据存入数据库时,会自动对,单引号等特殊符号转码,读取时再还原,主要是为了安全考虑,没什么值得大惊小怪的。框架主要是为了快速开发大型项目,有这类需要时就学习框架。好点的框架zend 等很多。
存数据的时候,需要对字符串进行addslashes
()进行操作$str=addslashes($str);$sql="insert
into
`tab`
(`content`)
values('$str')";去除数据的时候操作如下$str=stripslashes($str);在页面显示时进行如下操作$str=htmlspecialchars(nl2br($str))
;
查看原帖
用点连接符把两个字符串连接起来,然后保存即可。
假设$a="abc";$b="def";
$c=$a.",".$b;
则,$c="abc,def";
3.然后按照正常的保存方式,保存到数据库即可。
注意:这种方式,需要对a,b两个字符串有一定的了解,比如,a,和b当中,都不能有作为分隔符的逗号,不然的话,如果将来再用逗号来分离的话,会有困难。
当然,也可以自定义分离符号。
针对你拉追加问题:$mysql-insert_table("test1","name","'mm\\'");
这个只存进“mm",斜线“\”没有
这里是这样的,首先,\是PHP里的转义字符,使用两个\,即"\\",实际上相当于一个\字符;
然后再说一点,在数据库中,单引号'是数据库中的转义字符,所以,你这里应该写作:
$mysql-insert_table("test1","name","mm'\\");