PHP在字符串中提交通配符

时间:2014-03-05 09:32:23

标签: php mysql string wildcard

我有一个将代码插入数据库的系统,例如AREF0OGS将是一个代码。

我遇到的问题是,当代码分发时,0和O之间的差异是难以辨认的,所以我需要一种方法,当前系统可以处理0和O相同(只要它在同一个字符串的一部分)。

这就是我所拥有的:

$code = mysql_real_escape_string($_POST['code']);  
$userid = mysql_real_escape_string($_POST['userid']); 

$resultcode = mysql_query('select * from xxxxxx where code = "'. $code .'"' ) or die(mysql_error());  

我有办法对待0和O是一样的吗?在PHP还是MySQL?

由于

2 个答案:

答案 0 :(得分:1)

我认为您最好的选择是在您进行查询之前,您可以将其替换为另一个。这可以在MySQL

中完成
select * from table where code=replace($code, 'O', '0')

或者在PHP中

$code = str_replace('O', '0', $code);

答案 1 :(得分:0)

只需将O字母替换为0位数(或其他方式)。

$code = mysql_real_escape_string($_POST['code']);   $code =
str_replace('0', '0', $code); $userid =
mysql_real_escape_string($_POST['userid']); 

$resultcode = mysql_query('select * from xxxxxx where code = "'. $code .'"' ) or die(mysql_error());