2016-12-28 2 views
0

Hallo Ich habe versucht, die URL meiner Seite in 127.0.0.1/news/1/the-world-needs-you von news.php?id=1&title=The World Needs You IDK Wie schreibe ich es mit htacces und ich benutze mysql Datenbank zum Speichern von Informationen und zeigen Sie es auf der Seite.URL Rewrite mit Text

Hier ist meine .htaccess

ErrorDocument 403 /errors/403.php 
ErrorDocument 404 /errors/404.php 

Options -Indexes 
Options +FollowSymLinks 

RewriteEngine On 
RewriteBase/
RewriteRule news/[0-9]+/[.*].html news.php?id=$1&tile=$2 

Antwort

0

Dies ist, wie Sie es tun.

Options +FollowSymLinks 
RewriteEngine on 
RewriteRule news/(.*)/(.*)/ news.php?id=$1&title=$2 

Achten Sie auf die zwei (.*) wie sie Karte zu $ ​​1 und dann 2 auf der Basis der Parameter $.

Rewritten URL sollte wie folgt aussehen:

http://localhost/news/1/The World Needs You/ 

Edit:

Um Räume mit Bindestrichen zu ersetzen. Der einfachste Weg, dies zu tun ist:

1) die Regel Aktualisieren

RewriteRule news/(.*)/(.*) news.php?id=$1&title=$2 

2) Zugriff auf die URL mit

/news/1/The-World-Needs-You 

3) Wenn Sie planen, den Titel in anzuzeigen deine Seite. Ersetzen Sie es wieder mit PHP.

?php 
    $title = $_GET['title']; 
    $r = str_replace("-"," ",$title); 
? 

EDIT 2:

Um Ihre dritte Frage aus den Kommentaren

Dank für die Hilfe zu beantworten. Ich habe noch eine Frage. Zum Beispiel hier in StachOverflow, wenn Sie die URL ein wenig ändern, wird es auf die richtige umleiten. wie tun yo es - BrxDgr8t vor 1 Stunde

wir zunächst einen Blick auf eine Probe Anfrage hier in Stack-Überlauf

http://stackoverflow.com/questions/41355986/url-rewrite-with-text/41356337?noredirect=1#comment69946939_41356337 

In dieser URL nehmen müssen, neben all den zusätzlichen Informationen, die vorhanden ist, Der Schlüssel dazu ist die ID, die nach /questions/ vorliegt, in diesem Fall 41355986. Diese Nummer ist die eindeutige Kennung für diese Frage, und wenn sie irgendeine Art von SQL-Datenbank verwendet haben, die Anforderung, diese Frage wäre zu bekommen:

Select * from questions where id = 41355986 

Danach, ist es nicht wirklich egal welcher Titel oder URL besuchen, da die eindeutige ID die ID ist.Daher ist jede der folgenden Beispiele wird so lange auf dieses Thema hinweisen, wie die ID {41355986} ist die gleiche

http://stackoverflow.com/questions/41355986/url-rewrite-with-text 


http://stackoverflow.com/questions/41355986/new-fake-url 

Nun, wenn Sie eine der Zahlen von der Frage-ID ändern entscheiden, werden Sie auf eine neue umgeleitet werden Frage:

http://stackoverflow.com/questions/41355981/url-rewrite-with-text 
+0

, wie ich ersetzen Sie den Raum mit Bindestriche wie diese http: // localhost/news/1/die-Welt-Bedarf-you/ – BrxDgr8t

+0

@ BrxDgr8t Werfen Sie einen Blick auf die aktualisierte Antwort – Yeikel

+0

dank für die Hilfe. Ich habe noch eine Frage. Zum Beispiel hier in StachOverflow, wenn Sie die URL ein wenig ändern, wird es auf die richtige umleiten. Wie macht man das? – BrxDgr8t