我正在创建一个简单的联系表单,并且表单正在通过jQuery加上客户端验证以及用PHP验证服务器端验证,以防用户在其浏览器上禁用Javascript。PHP表单验证。不在同一页
虽然有许多源代码示例在那里,可以处理,并用单页显示,我还没有看到许多他们分为:form.php的和validator.php,例如做这样的任务。
我有大多用HTML编写的用于标记的形式 与将要接收/显示从validator.php检索到的错误或成功消息一些PHP码本form.php的文件。现在,我遇到的问题是将这两者联系起来,以便他们彼此交谈而不抱怨。
“形式” 的属性已经行动分配给validator.php 和validator.php内我具备的功能之一,如下所示:
if (isset($error)) {
$msg = "<p>Please enter valid information.</p>";
require ("form.php");
}
而且,在form.php的我声明require ("validator.php");
并使用这个$ msg变量从validator.php来显示消息,但浏览器抱怨$ msg是未定义的,即使验证已经它的运行并定义了字符串。
从外观上看,我认为这两个php文件没有正确链接。 任何人都有解决方案的想法?
将form.php中的表单动作设置为validator.php,或者您必须使用ajax。 – Naeem
如果你已经在一个函数中声明了你的$ msg变量,那么它在该函数之外是不可用的。你可以把它声明为全局的,然后就可以使用了。但是,链接页面的方式看起来可能会变得很麻烦。你可能会更好地创建一些$ _SESSION变量来处理这个问题。 – 2013-07-01 05:43:17
你是否需要validator.php中的form.php,然后在form.php中需要validator.php?它似乎是一个循环,因为** naivists **说 – vladkras