Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

PHP

Miha Vičič
Miha Vičič
10,262 Points

Server or php problem

Hello! I have a problem (probably with my MAMP setup?). When i open the index.php file it loads up normally but when I click on a link in shows me only the php code in that file.

Stephen Little
Stephen Little
8,312 Points

Could you show us the code that makes up the link? that would be a great help in figuring this out :)

cheers! Stephen

7 Answers

It sounds like you're either:

  • not adding .php to the end of your filename
  • you're linking to the file instead of the server e.g. /doc/webstuff/file.php instead of localhost/file.php
Stephen Little
Stephen Little
8,312 Points

that's why I was asking to see the code for the link :)

Miha Vičič
Miha Vičič
10,262 Points

I think I got the code right (i tested with Mike T-shirt site). The page loads normally. Both when i'm testing the links the browser shows me only the php code :/

Stephen Little
Stephen Little
8,312 Points

you should post the code that your are trying to run so that members can see it. This allows people to see what your trying to do and maybe see the errors.

Stephen

The only reason you would get php code printed to the screen is if you're not telling the server "hey, this is a php file". This is done by making sure all your files end in .php and you're using the server to view them.

You might have correctly navigated to the home page (localhost/), but your links may be set up incorrectly. If you're using MAMP, you should be browsing localhost. Take a look at the url of the broken page - what does it say? It should look like 'localhost/some-page.php' or similar.

Miha Vičič
Miha Vičič
10,262 Points

Yes I thought the same problem I checked and rechecked. that's why I use the final version of Shirt 4 Mike. I check the localhost directory (http://localhost:8888) an it opens the Shirt 4 Mike but when I click on a link (http://localhost:8888/shirts/105/) the site doesn't load

Have you got to the point in the project where you've started to use rewrite rules in a .htaccess file?

If you've used the final version and haven't set up the rewrite rules etc, this might be the cause of your issues.

Stephen Little
Stephen Little
8,312 Points

check to see if your .htaccess file looks like this maybe.

RewriteEngine On

RewriteRule ^shirts/$ /shirts/shirts.php

RewriteRule ^shirts/([0-9]+)/$ /shirts/shirt.php?id=$1

RewriteRule ^receipt.php$ /receipt/ [R=301]

RewriteRule ^contact.php$ /contact/ [R=301]

RewriteRule ^shirts.php$ /shirts/ [R=301]

RewriteRule ^(shirts/[0-9]+)$ /$1/ [R=301]

RewriteCond %{QUERY_STRING} ^id=([0-9]+)$

RewriteRule ^shirt.php$ /shirts/%1/? [R=301]

Miha Vičič
Miha Vičič
10,262 Points

I finally found the problem :D

It seems I didn't correctly composed the links (in the "inc" folder) on my page. Thanks all for the help I hope one day I can give you the needed advice. :)

Some Person
Some Person
4,218 Points

Hi Miha Vičič

What changes did you make in the "inc" folder to make it work?

My site loads in localhost. displays everything. When I click the t-shirts for eg: server/mikeshirts/shirts/131/ I get 404 error.

Some Person
Some Person
4,218 Points

It just says The requested URL /shirts/shirts.php was not found on this server.