Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialChris Grazioli
31,225 PointsCan't get a correct Relative Server Path in Enhancing a simple PHP application
What Am I doing wrong here? I've tried both include() and require_once() functions <?php include($_SERVER["DOCUMENT_ROOT"] . "/config/company.php");?>
<?php include($_SERVER["DOCUMENT_ROOT"] . "/config/company.php");?>
<html>
<head>
<title>Leadership | Shirts 4 Mike</title>
</head>
<body>
<h1>Leadership</h1>
<p><strong>Owner:</strong> ????</p>
<p><a href="/contact/">Contact</a></p>
</body>
</html>
4 Answers
manav
5,466 PointsI see another issue here!
The question says, "use relative server path", but you seems to be using/suggesting the "absolute server path":
<?php
include($_SERVER["DOCUMENT_ROOT"]."config/company.php");
?>
As per my understanding, the relative server path should be:
<?php
include("../../config/company.php");
?>
geoffrey
28,736 PointsYou put a slash before config which isn't required. I 've just tested without that one and that worked.
<?php
include($_SERVER["DOCUMENT_ROOT"]."config/company.php");
;?>
<html>
<head>
<title>Leadership | Shirts 4 Mike</title>
</head>
<body>
<h1>Leadership</h1>
<p><strong>Owner:</strong> ????</p>
<p><a href="/contact/">Contact</a></p>
</body>
</html>
Chris Grazioli
31,225 PointsDoesn't the video specifically say to leave the forward slash on when usin the $_SERVER["DOCUMENT ROOT"] array to get the root host
geoffrey
28,736 PointsI don't don't think the video asks to do that. But you don't need to specify the "/", as a test just do this
<?php
echo $_SERVER["DOCUMENT_ROOT"];
?>
This prints /var/www/ so if ever you add "/" before config, the path won't be good. That will print /var/www*//config/company.php" instead of /var/www/*config/company.php
That's the explanation.