mysql中"'"的问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBasal
2016-06-23 14:05:33878semak imbas

"select * from databases where 'name'='my name'"


当my name变成I'm xiao的时候就出错了,怎么解决啊????


"select * from databases where 'name'='I'm xiao'"


回复讨论(解决方案)

1、"select * from databases where `name`='my name'"
字段名称用的是`,ESC 下方的那个符号,还不是单引号
2、I'm xiao 中有单引号‘,所以'I'm xiao'中的单引号会引起混淆

转义呀

addslashes -- 使用反斜线引用字符串
mysql_real_escape_string --  转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集

请使用转义哦

addslashes先处理变量
mysql_real_escape_string直接在sql里用

请使用转义符, 认真检查代码。

看不明白  到底如何写

就是在有特殊字符的地方加 \  这个符号转义一下。

就是在有特殊字符的地方加  \  这个符号转义一下。

2楼正解~~~转义下就OK了。。

你现在的SQL很容易被注入

需要转义哦 addslash 或者mysql_real_escape_string

请使用转义试试!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:复选数据汇总问题Artikel seterusnya:PHP 5.4.14 and PHP 5.3.24 released!