Solved

header in php for more the one website

Posted on 2012-04-05
5
235 Views
Last Modified: 2012-08-14
I have 2 websites, basically the same thing except the language is different. I know I could do this all on one domain, but I want to have an english and a french domain name for certain reasons, both with have the same code obviously.  Im working roght now in the header which basically is the main navigation.

I was thinking of doing something like this - because I may want to add more domains later

$currentDomainName = $_SERVER['SERVER_NAME'];
$myDomains = array("domainEng.com", "domainFr.com");

while($myDomains)
{
     Show navigation for domain
}

however the navigation could difer from site to site, I want to be able to chose the name of the links for each site.
0
Comment
Question by:prowebinteractiveinc
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 110

Accepted Solution

by:
Ray Paseur earned 500 total points
ID: 37811686
Have a look at this article and see if the design pattern makes sense for you.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_8910-A-Polyglot-Web-Site-in-PHP.html
0
 

Author Comment

by:prowebinteractiveinc
ID: 37811832
your not understanding what i want... forget the fact that im trying to control languages. I want to control the main navigation of multiple websites, contained in one file shared upon all websites...
0
 
LVL 110

Expert Comment

by:Ray Paseur
ID: 37811908
OK, If I am understanding this correctly, you want to detect the name of the domain.  You've got that part right in $_SERVER["SERVER_NAME"].  Then perhaps you would want a switch/case construct something like this (untested but probably valid in principle).  It will provide an abstraction layer that matches the detected domain to the name of the file that contains the navigation script.
<?php // UNTESTED CODE
switch (strtolower($_SERVER["SERVER_NAME"]))
{
    case "domainen.com": $inc = "english_nav.php"; break;
    case "domainfr.com": $inc = "french_nav.php";  break;
    default: $inc = "english_nav.php";
}
require_once($inc);

Open in new window

0
 

Author Comment

by:prowebinteractiveinc
ID: 37812744
ok, I think I get the idea, however instead of using a file for the navigation I have to arrays link names and link urls such as:

	$pgName = array("Accueil", "Profil", "Application de credit", "Inventaire virtuel", "Credit 101", "Contact");
	$pgUrl = array("index.php", "profil.php", "application.php", "inventaire.php", "credit101.php", "contact.php");

Open in new window


what is line 6 and line 8 for ?
0
 
LVL 110

Expert Comment

by:Ray Paseur
ID: 37812873
Line 6 is the default navigation if the domain does not match any case in the switch structure.
Line 8 brings into the current scope of the script, and runs the script, named in the variable $inc.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Author Note: Since this E-E article was originally written, years ago, formal testing has come into common use in the world of PHP.  PHPUnit (http://en.wikipedia.org/wiki/PHPUnit) and similar technologies have enjoyed wide adoption, making it possib…
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
The viewer will learn how to count occurrences of each item in an array.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

733 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question