Copy link to clipboard
Copied
Hi guys,
I was just wondering if anyone would know how to do this, with PHP - I used to mess around with PHP on an old site, but have forgotten most of it... Here's what I need to do - I want to place the same internal link on several dozen different pages on my site (we might call these pages A1, A2, A3 etc), which will all direct the users to the same page (page 'B') - however when they arrive at page B, I need it to display an entire page of 'unique' product info, relevent only to the (various A1, A2, A3 etc) pages they clicked through from. Hope that makes sense.
eg. If page A1 was about apples, then once they clicked the internal link through to page B, they would see apples displayed, on page B. But if they clicked through from page A2, which was about oranges - they would instead see oranges on page B.
I know this is achievable, I just dont remember the code that is needed to do it. Any thoughts, or even a link to a tutorial that will show me how to do this, would be much appreciated : )
Cheers,
Craig
OK, simple as possible might be to name your include files simply for example like apples.php oranges.php plums.php
so you now redirect using a paramemter like Ben said, for example:
mypage.php?product=apples
mypage.php?product=oranges
mypage.php?product=plums
On you target page create a variable and create the include filename from the url paramter, like this (assuming it will always have a value):
<?php
$filename = $_GET['product'];
include $filename.".php";
?>
Copy link to clipboard
Copied
Are you referring to URL parameters as in <a href="product.php?id=oranges>Go to oranges</a>
Copy link to clipboard
Copied
Hi Ben,
Thanks for your reply. Yes, that is definitely half of the equation solved, thanks! Then.. my issue would be getting oranges to only appear on page B when the reader has clicked through from the 'orange' page - this seems somewhat curlier. ie. If I placed code something like this on Page B <?php include("include/oranges.php"); ?> it would display oranges to the apple readers (and all the other fruits ; ) as well - not sure how I can get it to discern the apple readers from the orange readers : ) Many thanks for your thoughts.
Cheers,
Craig
Copy link to clipboard
Copied
Ideally you want your product information in a database, then you would create a query filtered by the URL parameter
Copy link to clipboard
Copied
Ahhh, OK - thanks Paul. Thats definitely getting way beyond my knowledge level, as I have only dealt with the 'include' folder for this stuff previously. Good thought though, many thanks - it could certainly be outsourced if need be.
Cheers,
Craig
Copy link to clipboard
Copied
OK, simple as possible might be to name your include files simply for example like apples.php oranges.php plums.php
so you now redirect using a paramemter like Ben said, for example:
mypage.php?product=apples
mypage.php?product=oranges
mypage.php?product=plums
On you target page create a variable and create the include filename from the url paramter, like this (assuming it will always have a value):
<?php
$filename = $_GET['product'];
include $filename.".php";
?>
Copy link to clipboard
Copied
yep you're right, except that personnaly I will do the opposite.
I mean instead of
1 -
calling a common page that call itself different appropriate content
A1 | A2 | An --> B and B --> orange | apple | pear and so on
I will
2 - call different page that call common content
A1 | A2 | An --> orange | apple | pear and all thoses call -->B
in fact how I see both method, the first one is database oriented, the second one is more flexible when using linked sheets, and so if datas have to be injected in different part of the page, i.e not only as an hero image.
Copy link to clipboard
Copied
Thanks Birnou, good to see there's multiple ways around it : )
Many thanks,
Craig T
Copy link to clipboard
Copied
Thanks Paul, that's gold. I can definitely play around with this and get the result I need, many thanks : )
Cheers,
Craig T
Copy link to clipboard
Copied
Thanks again guys.
Copy link to clipboard
Copied
You're welcome 🙂