问题出在哪里?这个简单的html/PHP表单在本地测试时正常运行,但在实际服务器上却失败了
P粉060528326
P粉060528326 2023-09-05 17:03:39
[HTML讨论组]
<p>我想在现有的网站上添加一个“发送消息”表单。我找到了这个教程:</p> <p>PHP联系表单</p> <p>我审查了教程中的代码,学习了它的工作原理,然后进行了编程。我将其运行起来,并在我的个人电脑上进行了所有测试,它完美地工作。</p> <p>然后,我将其作为现有网站的一部分放到了服务器上。但是失败了。点击提交按钮会清空屏幕,表单消失不见。没有错误信息。什么都没有。</p> <p>XAMPP和实际服务器都运行着PHP版本8.1.12。</p> <p>它在这行PHP代码上失败了:header('Location: contact.php', true, 303);</p> <p>我花了很多时间来调试这个问题,学习了更多关于PHP的知识,按照在Stack Overflow上找到的建议进行操作,并阅读了关于函数header()的PHP文档。我还参加了两个LinkedIn Learning的PHP课程。但我无法弄清楚问题出在哪里。</p> <p>然后,我将问题简化为这段简单的代码,使其尽可能简单,只有一个包含提交按钮的表单。它和完整的表单有同样的问题。</p> <p>这是我的测试代码:</p> <pre class="brush:php;toolbar:false;">&lt;!doctype html&gt; &lt;html lang=&quot;en&quot;&gt; &lt;head&gt; &lt;!-- Required meta tags --&gt; &lt;meta charset=&quot;utf-8&quot;&gt; &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1, shrink-to-fit=no&quot;&gt; &lt;title&gt;Contact&lt;/title&gt; &lt;/head&gt; &lt;?php session_start(); $request_method = strtoupper($_SERVER['REQUEST_METHOD']); if ($request_method === 'GET'){ ?&gt;&lt;form action=&quot;for_stack_overflow.php&quot; method=&quot;post&quot;&gt; &lt;button type=&quot;submit&quot;&gt;Send Message&lt;/button&gt; &lt;/form&gt; &lt;?php } elseif ($request_method === 'POST'){ header('Location: for_stack_overflow.php', true, 303); exit; } ?&gt;&lt;/html&gt;</pre> <p>这段简单的html/php代码和我的完整表单有同样的问题:点击提交按钮后,屏幕被清空,只剩下一个表单按钮。表单不起作用。</p> <p>我故意去除了所有缩进,因为我了解到一个常见问题是看不见的空白字符会导致PHP函数header()失败。</p> <p>这个程序(以及我的完整表单)每个都:</p> <ol> <li>在我的个人电脑上进行本地测试时完美运行;</li> <li>在真实服务器上,我的网站托管账户上运行时失败。</li> </ol> <p>我已经尽力解决这个问题了。</p> <p>是什么出了问题?可能出了什么问题?有什么我不理解的地方吗?</p>
P粉060528326
P粉060528326

全部回复(1)
P粉055726146

header()session_start()调用移到HTML输出之前。

<?php session_start();
...
?>
<!doctype html>
...

参考:https://www.php.net/manual/en/function.header.php

参考:https://www.php.net/manual/en/function.session-start.php

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号