您好StackOverFlow成员。
我需要一个关于我的编程脚本的帮助。
我惊呆了,试着用不同的方法让我的代码更简单。
在我尝试简化之前。代码工作得很好,它能够完成这个功能。
开始:
在我尝试稍微调整它之前检测PHP上的HTML工作:
<?php
include 'Mobile_Detect.php';
$detect = new Mobile_Detect();
if ($detect->isMobile()) {
header('Location: http://facebook.com');
exit(0);
}
?>
<b> Testing / This is not a supported page for mobile </b>
这段代码就像一个魅力。当我使用浏览器访问以下页面时。 它向我显示了消息&#34;测试/这不是移动支持的页面&#34;。
当我使用手机访问它时,它就像一个魅力,并将我重定向回Facebook。
所以这是我遇到的新问题。 我刚刚从HTML中删除了PHP并将其放在名为&#34; detection.php&#34;
的文件中<?php
include 'detection.php';
?>
<b> hello </b>
<p> testing on anarchy </p>
但这一次,当我使用网络浏览器访问该网站时,它向我展示了这条消息 &#34;对无政府状态进行测试&#34;当我使用移动设备时。它仍然将我重定向到同一页面 &#34;对无政府状态进行测试&#34;。
我们如何以一种只需要在HTML标头上包含PHP文件而不是在HTML页面上编写PHP代码的方式来创建它。
有什么想法吗?
答案 0 :(得分:0)
尝试使用:您必须使用括号(&#39;页面&#39;);并且您不应重复任何代码,因为您已经从另一个页面调用代码,因此您添加的是:
<?php
include('Mobile_Detect.php');
?>
并在mobile_detect.php页面上添加:
<?php
$detect = new Mobile_Detect();
if ($detect->isMobile()) {
header('Location: http://facebook.com');
exit(0);
}
?>
答案 1 :(得分:0)
始终使用“require”而不是“include”。 如果函数找不到该文件,“require”将抛出致命错误,并且脚本将暂停。 如果函数找不到文件并且脚本继续运行,“include”会抛出警告,这意味着如果关闭PHP错误,您可能不会注意到此错误。
还要依靠“require_once”来避免诸如“无法重新声明功能”或“无法重新声明常量”等问题。
另外,如果您使用“header()”,则需要确保在“标题”功能之前没有使用“print”或“echo”。否则,您将收到“已发送标头”错误。
要调试您的问题,您应该使用“require_once”,然后您应该检查它是否失败。如果失败,那么你的路径可能有问题。