Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用PHP和AJAX获取页面名称而不是页面编号_Javascript_Php_Jquery_Html_Ajax - Fatal编程技术网

Javascript 使用PHP和AJAX获取页面名称而不是页面编号

Javascript 使用PHP和AJAX获取页面名称而不是页面编号,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我正在使用AJAX创建一个加载内容的简单页面。我正在使用AJAX和PHP,问题是在教程中,dude使用了页面名称,如“page1、page2、page3等”。我不想这样做,我想用实际页面的名称来代替它,例如“products,about,etc”。我一直在尝试使用load.php上的代码,但每次我都会收到这个通知,页面不会加载注意:未定义索引:第2行和第3行“我的测试站点”中的页面 这是load.php <?php if(!$_POST['page']) die("0"

我正在使用AJAX创建一个加载内容的简单页面。我正在使用AJAX和PHP,问题是在教程中,dude使用了页面名称,如“page1、page2、page3等”。我不想这样做,我想用实际页面的名称来代替它,例如“products,about,etc”。我一直在尝试使用load.php上的代码,但每次我都会收到这个通知,页面不会加载注意:未定义索引:第2行和第3行“我的测试站点”中的页面

这是load.php

<?php
if(!$_POST['page']) die("0");

$page = (int)$_POST['page'];
if(file_exists('pages/page'.$page.'.html'))
echo file_get_contents('pages/page'.$page.'.html');
else echo 'There is no such page!';
?>
编辑 菜单HTML

  <a href="#products" class="w-nav-link nav-link" data-overlay-trigger="overlay">products</a>
  <a href="#about" class="w-nav-link nav-link" data-overlay-trigger="overlay">about</a>
  <a href="#storelocator" class="w-nav-link nav-link" data-overlay-trigger="overlay">store locator</a>
  <a href="#media" class="w-nav-link nav-link" data-overlay-trigger="overlay">media</a>
  <a href="#faq" class="w-nav-link nav-link" data-overlay-trigger="overlay">faq</a>
  <a href="#contact" class="w-nav-link nav-link" data-overlay-trigger="overlay">contact</a>

该菜单还会打开一个显示内容的覆盖图


什么是可能的解决方案?

好的,所以教程中的人正在这样做

var$pageRoot=$linkClicked.replace(“#page”,”)

基本上,他们正在从
#page1
#page2
中删除
#page
,等等。。这样,他们只剩下数字1、2,依此类推,然后通过页码发送到服务器,如

data:'page='+$pageRoot,//这里$pageRoot将是一个数字

您希望直接发送页面名称

所以你要把这条线改成

var$pageRoot=$linkClicked.replace('#','')

现在$pageRoot将使您的页面名类似于“产品”


另外,在处理此代码时,请保持浏览器上的开发人员工具处于打开状态,并查看在“网络”面板中发送的请求

您是否也对HTML进行了更改?同时添加HTML代码HTML added@CodeHearth在你的href中没有
#page
,为什么你要将
$(u POST['page']]
设置为一个整数?老实说,我不明白如果你所做的只是拉入静态HTML文件BTW,
如果(!isset($(u POST['page'])死亡(“0”)哦,好的,现在我明白代码了。这很有帮助,谢谢。
  <a href="#products" class="w-nav-link nav-link" data-overlay-trigger="overlay">products</a>
  <a href="#about" class="w-nav-link nav-link" data-overlay-trigger="overlay">about</a>
  <a href="#storelocator" class="w-nav-link nav-link" data-overlay-trigger="overlay">store locator</a>
  <a href="#media" class="w-nav-link nav-link" data-overlay-trigger="overlay">media</a>
  <a href="#faq" class="w-nav-link nav-link" data-overlay-trigger="overlay">faq</a>
  <a href="#contact" class="w-nav-link nav-link" data-overlay-trigger="overlay">contact</a>