PHP-服务器端验证-这是一个好方法吗? - php

我已经通过jQuery的帮助进行了广泛的客户端验证。现在进入服务器端验证,如果我发现某些字段无效,是否可以简单地将错误返回给客户端并且没有任何有用的消息?

我的假设是用户必须启用JavaScript才能访问我的网页。如果Web浏览器禁用了JavaScript,则用户将看不到该表单。我可以简单地使用noscript来做到这一点。如果他们通过我设计的表单提交信息,则不应将任何无效字段提交给服务器。因此,如果我在服务器端发现任何无效字段,则我的表单被某些黑客而不是某些常规用户破坏了。

我的理解对您有意义吗?

<以下消息是根据许多专家的评论附加的。
很抱歉,我在这里没有明确提到我的问题。我总是做服务器端验证b / c,我不应该信任任何用户输入。

但是,我的意思是,是否应该将服务器端错误消息传递给用户。因为,如果用户使用我的表单并将表单提交到服务器PHP,则永远不应存在无效字段。如果发生这种情况,那么我认为有些黑客正在使用我的PHP。所以我想忽略它们。

我尝试避免将服务器端错误消息传递回客户端的主要原因是,我没有找到更好的解决方案。我在这里发布了几个相关问题,但没有很好的建议或示例。

谢谢

参考方案

在您的情况下,听起来您可以相当确定有效的用户不会遇到PHP验证错误。因此,您可以使用更轻松的错误消息进行响应。您确实应该对发生的问题给出一些体面的指示。如果您不这样做,那么您有一天会因为某种原因而导致javascript失败而后悔(例如您更改了它,并且测试得不够好)。

PHP getallheaders替代 - php

我正在尝试从服务器上的apache切换到nginx。唯一的问题是我在PHP脚本中使用的getallheaders()函数,该函数不适用于Nginx。我已经尝试过用户在getallheaders函数上的php站点上提供的注释,但这并不返回所有请求标头。请告诉我如何解决这个问题。我真的想切换到Nginx。 参考方案 您仍然可以使用它,但是您必须像这里一样重新定义…

php Singleton类实例将在多个会话中保留吗? - php

举一个简单的例子,如果我想计算一个不使用磁盘存储的脚本的命中次数,我可以使用静态类成员来执行此操作吗?用户1:<?php $test = Example::singleton(); $test->visits++; ?> 用户2:<?php $test = Example::singleton(); $test->visits+…

PHP:将字符串拆分为字母和数字部分的最佳方法 - php

我有几个格式的字符串AA11 AAAAAA1111111 AA1111111 分离字符串的字母和数字部分的最佳方法(最有效)? 参考方案 如果它们都是一系列字母,然后是一系列数字,并且没有非字母数字字符,那么sscanf()可能比regexp更有效$example = 'AAA11111'; list($alpha,$numeric) =…

php-casperjs获取内部文本 - php

我正在为casperjs使用php包装器-https://github.com/alwex/php-casperjs我正在网上自动化一些重复的工作,我需要访问一个项目的innerText,但是我尚不清楚如何从casperjs浏览器访问dom。我认为在js中我会var arr = document.querySelector('label.input…

PHP strtotime困境 - php

有人可以解释为什么这在我的服务器上输出为true吗?date_default_timezone_set('Europe/Bucharest'); var_dump( strtotime('29.03.2015 03:00', time()) === strtotime('29.03.2015 04:00�…