2016-07-30 28 views
0

In meiner Website Benutzer anderes Wort in anderen Land suchen, so habe ich diese Art von url:

http://example.com/search.php?search=keyword&page=1&siteID=US

Wenn der Benutzer einige Feldsuche hinzufügen wird:

http://example.com/search.php?minPrice=1&maxPrice=500&search=keyword&page=1&siteID=US

Jetzt möchte ich Subdomain für jede SiteID erstellen, die ich in meinem Skript voreingestellt habe.

Also, wenn Benutzer rufen eine Suche mit siteID = US i http://us.example.com/

umleiten möchten Wenn Benutzer suchen siteID = FR i die Subdomain wollen dieses ist wie http://fr.example.com/

Ich brauche für meine Sub-Domain Platzhalter zu setzen?

Wie kann ich in PHP eine Funktion erstellen, um jedes Ziel der richtigen Subdomain zuzuordnen?

Vielen Dank!

Antwort

0

Umleitung von Php

$validCountry = ['us','fr'....]; 
if(in_array($_GET['siteID'],$validCountry)){ 
$nQuery = str_replace('siteID='.$_GET['siteID'],'',$_SERVER['REQUEST_URI]); 
header ("Location: http://".$_GET['siteID'].'example.com/'.$nQuery); 
}else{ 
//... 
} 

aber ich denke, es ist besser, Sie Javascript in ein Suchformular verwenden

onsubmit Form Dokument Ort zu leben umleiten ... etc

0

Aus Ihrer Frage, i kann sehen siteID = FR oder siteID = US kommen. Warum können Sie nicht einfach oben auf der PHP-Suchseite nachsehen: (Hier prüfe ich nur, ob siteID irgendwelche Codes hat, wenn ja, dann werde ich auf die URL umgeleitet)

$siteID=$_REQUEST['siteID'];//send rest of the parameters along if required 
if (!empty($siteID)){  
    $country_list = array('US','FR'); 
    if (in_array($siteID, $country_list)) { 
    $url = "http://$siteID.example.com/"; 
    header('location:'$url); 
    } 
} 
$siteID=$_REQUEST['siteID'];//send rest of the parameters along if required 
if (!empty($siteID)){  
    $country_list = array('US','FR'); 
    if (in_array($siteID, $country_list)) { 
    $url = "http://$siteID.example.com/"; 
    header('location:'$url); 
    } 
}