0

好的,我想提前道歉,因为我无法阐明问题的根本原因是我正在尝试构建的这个网站。所以如果我在外太空……=/

无论如何,我遇到的第一个问题是,当我尝试解决 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

现在它一直要求这条路径......这与我的托管服务有关吗?因为它似乎在说我必须定义一个绝对路径???

欢迎并感谢所有帮助。谢谢!

4

1 回答 1

0

只需将您需要的所有文件放在同一目录中并使用 require('filename'); 没有路径。

于 2013-02-25T23:30:36.413 回答