Php 仅允许在数据库中输入某些字符
我正在检查答案,只接受某些类型的字符,而忽略一些字符 我在堆栈中找到了一个链接 但是,即使这阻止了在文本框中输入数据,任何对如何检查内容和从客户端删除模式略知一二的人都将允许它输入它想要的任何细节并发送到数据库 有什么方法可以阻止我的网站?我不需要某些字符,如空格、分号等 html和php中的前端 MySQL中的后端首先, 您可以为数据库中的每一列定义一个类型,例如,如果您将类型设置为整数,您将无法插入任何其他内容 假设您希望“过滤”或操作数据库中的字符串-我会制作一个正则表达式来替换字符串中任何不需要的字符,并将其插入数据库中。首先, 您可以为数据库中的每一列定义一个类型,例如,如果您将类型设置为整数,您将无法插入任何其他内容Php 仅允许在数据库中输入某些字符,php,html,mysql,stored-procedures,phpmyadmin,Php,Html,Mysql,Stored Procedures,Phpmyadmin,我正在检查答案,只接受某些类型的字符,而忽略一些字符 我在堆栈中找到了一个链接 但是,即使这阻止了在文本框中输入数据,任何对如何检查内容和从客户端删除模式略知一二的人都将允许它输入它想要的任何细节并发送到数据库 有什么方法可以阻止我的网站?我不需要某些字符,如空格、分号等 html和php中的前端 MySQL中的后端首先, 您可以为数据库中的每一列定义一个类型,例如,如果您将类型设置为整数,您将无法插入任何其他内容 假设您希望“过滤”或操作数据库中的字符串-我会制作一个正则表达式来替换字符串中任
假设您希望“过滤”或操作数据库中的字符串-我会制作一个正则表达式来替换字符串中任何不需要的字符并将其插入数据库。这可以通过客户端的
模式属性来完成,但是HTML5textarea
元素不支持模式
属性
另一种方法是使用JavaScript(如您所述)
如果要替换无效字符,可以使用jQuery函数replace()
,该函数类似于PHP中的preg\u replace()
,它接受常规表达式
您也可以在服务器端(在PHP中)检查有效性(在将值插入数据库之前)
可以在客户端使用pattern
属性,但是HTML5textarea
元素不支持pattern
属性
另一种方法是使用JavaScript(如您所述)
如果要替换无效字符,可以使用jQuery函数replace()
,该函数类似于PHP中的preg\u replace()
,它接受常规表达式
您也可以在服务器端(在PHP中)检查有效性(在将值插入数据库之前)
谢谢,在我看来使用php要好得多,在我看来使用php要好得多
var text = $('textarea').val();
var expres = /[^a-zA-Z0-9\!\@\#\$\%\^\*\|]+/;
if(expres.test(text)){
//... some action
}
preg_replace("/[^A-Za-z0-9 ]/", '', $string);