好的,我想提前道歉,因为我无法阐明问题的根本原因是我正在尝试构建的这个网站。所以如果我在外太空……=/
无论如何,我遇到的第一个问题是,当我尝试解决 php 中“包含”函数的问题时,我收到了这个错误(如下),我完全篡改它的原因是因为我的导航不是工作。每当我尝试离开 index.php 页面时,我都会收到 404。
警告:包含(/home/content/22/10350022/html/../Setup.php)[function.include]:无法打开流:/home/content/22/10350022/html/中没有这样的文件或目录第 6 行的 index.php
警告:include() [function.include]: 未能打开 '/home/content/22/10350022/html/../Setup.php' 以包含 (include_path='.:/usr/local/php5_3/lib/php ') 在第 6 行的 /home/content/22/10350022/html/index.php
以下是 index.php、setup 和 navs 中的代码:
Index.php ---下面
> > <?php
// Setup Document:
//include (1) - forces the site to load the file one time but we're not going to include set up file more than once
define('APP_PATH', dirname(__FILE__) . "/../");
include(APP_PATH . "Setup.php");
if (isset($_GET['page']) && $_GET['page'] ==! ''){
$pg =$_GET['page'];
} else {
$pg = 'Home';
}
?>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="Css/styles.css">
<style type="text/css">
body {
background-color: #039;
}
</style>
</head>
<body>
<div class ="header">
<?php include('Template/header.php');?>
</div>
<div class ="main_Nav">
<?php include('Template/main_Nav.php');?>
</div>
<div class ="main_Content">
<?php include('Content/'.$pg.'.php');?>
<?php #$Home = "SELECT body FROM Pages WHERE Id=1";
#$d = '$Home, $conn';
#if ($d == false) {
#echo "FAILURE".mysql_error($conn);
#}
?>
<div class ="main_Footer">
<?php include('Template/footer.php');?>
</div>
</body>
</html>
有些东西是故意注释掉的,所以我可以解决这个问题。
下面的导航——
<?php
## Main Navigation Document
include('/Config/setup.php');
?>
<ul>
<li><a href="Home">Home</a></li>
<li><a href="Services">Services</a></li>
<li><a href="FreeStuff">Free Stuff</a></li>
<li><a href="Blog">Blog</a></li>
<li><a href="AboutUs">About Us</a></li>
</ul>
最后 - 设置 - 一些信息明显被涂黑,一些东西被故意注释掉
<?php
## Setup Document
//Host - location of database on server etc
//username
//pswd
//database name
//connection variables
$host = "";
$user = "test";
$pwd = "";
$db = "test";
//connection info
$conn = mysqli_connect ($host, $user, $pwd, $db);
if ($conn ==false) {
echo "connection has failed";
}
//fetching the title of pages
#$sql = "SELECT title FROM pages WHERE Id=2";
//da warnings
#$r = '$sql,$conn';
# echo $r;
# echo "sucess!";
// return
#if ($r == false) {
# echo "FAILURE".mysql_error($conn);
#}
?>
最初我只是使用include('/Config/setup.php'); 哪个有效。但是,每当我尝试导航到导航栏中的特色内容时……我都会收到 404 错误。现在这应该只改变内容框——页面的其余部分应该保持静态。<?php include('Content/'.$pg.'.php');?>
这就是我想我在这里做的。或者至少我希望它是大声笑。$pg 是字符串 4(Home),除非 page 另有定义,否则默认为 home。至少那是我认为我在上面写的。
我的文件结构真的很快是这样的:
... FTP 上的根文件夹 -content -config -images -Css -templates -Stats -Roodyinfo
现在它一直要求这条路径......这与我的托管服务有关吗?因为它似乎在说我必须定义一个绝对路径???
欢迎并感谢所有帮助。谢谢!