如何使用PHP防止符号存储在数据库中?

时间:2013-09-30 17:09:41

标签: php mysql backslash slash

如何防止将/\;等符号存储在数据库中?我已经在使用mysql_real_escape_string()了,但是如果我在表单的输入字段中放了\mymail@mydomain.com,我会发现存储在数据库中的电子邮件带有“\”。我该如何防止这种情况?

2 个答案:

答案 0 :(得分:2)

你需要使用正则表达式来避免数据库中的/,\,;等。 使用这个正则表达式。写这个javascript。

regExpNum = /^[\w]+(\.[\w]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/
if(!regExpNum.test(EmailID))
{
alert("Invalid email address.");
return false;
}

答案 1 :(得分:1)

也许您需要某种输入验证器,例如filter_input(PHP> = 5.2.0)

filter_input(INPUT_GET, 'email', FILTER_VALIDATE_EMAIL);

如果结果为null,则应发送错误。

您可以阅读http://www.php.net/manual/en/book.filter.php

上的文档