SQL验证!

Fil*_*lip 1 php mysql sql

我是SQL的新手,所以这可能是一个愚蠢的问题......

我有一个PHP表单,填写我的SQL表中的几个字段.我有这个代码:

$sql="INSERT INTO $tbl_name
(app_name, app_path, short_desc, full_desc)
VALUES ('$_POST[app_name]', '$_POST[app_path]',
'$_POST[short_desc]', '$_POST[full_desc]')";
Run Code Online (Sandbox Code Playgroud)

但即使app_name和app_path也是非NULL列,如果表单中的这些字段中没有文本,则可以执行查询.

所以,我的问题是:

如何停止查询的执行如果在NOT NULL字段没有文字?

Dan*_*ath 7

不要这样做,您正在编写具有SQL注入漏洞的代码.你也在制作编程仙女.

查看准备好的陈述.之后,请在此处获取其他答案中的建议,首先检查值.

  • @Filip:考虑到如果你在描述字段中输入一个撇号就会中断,我会说这对管理员来说至少也是一个烦恼.此外,这不是让事情不安全的借口.最好始终坚持正确的做事方式,所以当真正需要时你不要忘记它. (5认同)
  • "这个表格仅适用于管理员"=>我不记得我在哪里阅读它,所以请按照您的意愿,但似乎以这种方式被破坏的大约80%的真实公司数据是有效的,登录,可能是心怀不满雇员.不要信任登录用户.也许甚至不是你自己:P (4认同)