Php 是否阻止操作标记切换当前页面?

Php 是否阻止操作标记切换当前页面?,php,html,Php,Html,我目前设置了两个PHP文件,一个用作表单,另一个用作所提供信息的处理器。它们是这样连接在一起的: <form action="processing.php" method="POST" enctype="multipart/form-data"> 当我点击submit时,页面切换到'processing.php'文件。我最近实现了用户必须输入的必填字段,但由于页面切换,用户无法看到此警告。我正在WAMP中测试这个 我认为一个解决方案可能是将处理脚本包含在与实际表单相同的文件中,

我目前设置了两个PHP文件,一个用作表单,另一个用作所提供信息的处理器。它们是这样连接在一起的:

<form action="processing.php" method="POST" enctype="multipart/form-data">

当我点击submit时,页面切换到'processing.php'文件。我最近实现了用户必须输入的必填字段,但由于页面切换,用户无法看到此警告。我正在WAMP中测试这个

我认为一个解决方案可能是将处理脚本包含在与实际表单相同的文件中,但脚本相当长,为了可读性,我真的希望它保留在两个单独的文件中


是否有一种方法可以防止页面切换到action标记中指示的页面

表单中的HTTP POST将转到您设置的任何表单操作。如果希望应用另一个文件中的逻辑,则需要重新构造,使逻辑位于processing.php中,或者需要更改表单操作


如果要同时防止页面刷新,则需要使用ajax。

如果只想在必填字段未正确填充的情况下防止页面切换,则需要创建onSubmit javascript调用,如果字段验证失败,则返回false。

如何实现必填字段?使用Javascript验证脚本?它应该调用
event.preventDefault()
,以防止在用户未输入所需字段时发生提交。@Barmar我没有这样做,我想我只需要PHP。我是否需要创建一个新文件来使用Javascript,或者在PHP文件中正确解析它?对必填字段使用PHP可能不是最好的主意,因为它仍然提交数据,只是通知他们需要填写某个字段。PHP可以将任何内容输出到HTML文件中,包括Javascript和CSS。PHP在您提交表单之前不会运行,所以现在阻止它进入新页面已经太迟了。您能详细介绍一下吗?你的意思是说现在使用Javascript来要求一些字段已经太晚了吗?不,现在使用PHP已经太晚了。PHP在表单提交后运行,因此无法阻止提交。Javascript在浏览器中运行,因此它可以阻止提交。如果我将整个脚本包含在一个文件中会怎么样?我知道这可能是一种不好的做法,但我不应该这样做。如果页面从“localhost/applicationon.php”变为“localhost/processing.php”,是否仍被视为页面刷新?如果页面发生变化,我将称之为刷新/重新加载/等等。用户看到空白,然后加载更多内容。您不必将整个脚本包含在一个文件中,但是当您从表单中发布帖子时,如果您有一个action属性,浏览器就会在该属性中发送请求。将整个脚本包含在一个文件中没有错。检查一下!空($\u POST),您知道表单已经提交。如果我确实将其包含在一个文件中,那么我会不会没有操作?假设表单是在myform.php中生成的。您还可以将操作设置为myform.php.Oh,我明白了!谢谢@Calvin Froedge