Php 分割背景处理
我不是PHP专家,所以请容忍我 如果我有一个页面(start.php),其中包含一个文本框和一个提交按钮,用户应该会看到 如何将服务器端指向后台的特定php文件(用户看不到),该文件包含进一步的说明。比如说, 以下是非常简化的示例,它们并不反映实际文件的复杂性。假设(process1.php)创建一个包含字符串“process1已使用”的会话,(process2.php)创建一个包含“process2已使用”的会话 现在,如果(start.php)中的文本框为空,则应使用“process1.php”文件,如果(start.php)中的文本框已填充,则应使用“process2.php”文件。然后,每个页面都应该转到“finish.php”页面,用户应该看到该页面,该页面将在屏幕上回显由“process1.php”或“process2.php”创建的会话内容,以供用户查看 这样的想法可以用php来实现吗?应该用php来实现吗?如果可以,如何实现?如果没有,我应该怎么做?i、 e.将复杂的流程拆分为可能的多个文件,以使开发人员在将来的维护工作中更轻松Php 分割背景处理,php,Php,我不是PHP专家,所以请容忍我 如果我有一个页面(start.php),其中包含一个文本框和一个提交按钮,用户应该会看到 如何将服务器端指向后台的特定php文件(用户看不到),该文件包含进一步的说明。比如说, 以下是非常简化的示例,它们并不反映实际文件的复杂性。假设(process1.php)创建一个包含字符串“process1已使用”的会话,(process2.php)创建一个包含“process2已使用”的会话 现在,如果(start.php)中的文本框为空,则应使用“process1.ph
请注意,process1.php或process2.php不应由用户直接访问或查看。我认为您所说的是后期处理,而不是后台处理 您可以使用if-else-around include(提交后) 这是给你的一张假照片
if(<form submitted>){
$accessKey = '1234';
if(<text box empty>){
include process1
}else {
include process2
}
}
if(){
$accessKey='1234';
if(){
包括进程1
}否则{
包括进程2
}
}
我建议您查看并搜索有关谷歌的更多教程
如果您真的想让php变得更简单、更易于维护,那么应该开始使用面向对象编程
然后,您可以让一个类分发所有请求,另一个类处理请求,第三个类呈现结果;) 最常用的方法是将您的输入元素放在表单元素中,表单元素的动作是一个.php文件<代码>。您很可能希望在此处完成处理逻辑:
if(strlen($_GET['inputname']))
{
include('process1.php');
}
else
{
include('process2.php');
}
话虽如此,现在有更好的实现方法,使用OO概念。例如:
form.php:
class MyForm
{
private $_val;
public __construct()
{
$this->_val = null;
}
public function process()
{
$this->_val = isset($_GET['txtfield']) ? $_GET['txtfield'] : null;
if(strlen($this->_val) > 0)
{
$this->processEmpty();
}
else
{
$this->processText();
}
}
public function processEmpty()
{
// do your processing if text field is empty here
}
public function processText()
{
// do your processing with input here
}
}
然后您的process.php文件可能如下所示:
require_once('myform.php');
$f = new MyForm();
$f->process();
在构建系统之前,我很可能会先回顾OO概念。遵循OO设计使得未来的工作比传统样式的脚本更加模块化和可扩展
编辑
免责声明:上面的代码只是一个示例-我实际上没有尝试运行它,因此它可能根本不起作用;) 如果用户以某种方式发现“start.php”指向“process1.php”或“process2.php”,那么他/她将能够发现,他/她只需在浏览器地址栏中键入“process1.php”或“process2.php”。如何停止?在if-else语句中设置一个访问密钥,并在进程文件中检查该访问密钥。勾选编辑