2009-06-11 10 views
0

Ich mache ein Admin-Panel für ein kleines Projekt. Ich möchte dynamische URLs verwenden, um bestimmte Dateneinträge zu bearbeiten. Zum Beispiel:How to: PHP dynamische URL Überprüfung

file.php bearbeiten & n = 53

ich diese URL möchte Eintrag bearbeiten 53.

Ich benutze eine switch-Anweisung für die Edit-Seite zu überprüfen, aber wie kann ich überprüfen ob die URL die & n = x-Erweiterung in derselben switch-Anweisung hat oder nicht?

Ex:

switch $_SERVER['QUERY_STRING'] 
{ 
    case "edit" 
     //shows a list of entries to edit 
     break; 
} 

Würde ich einen anderen Fall machen nur mit einem reg Ausdruck? Wie würde ich diesen Ausdruck machen?

Ich realisiere, ich könnte nur separate Datei namens edit machen und nur eine Stufe der Abfrage-String verwenden, aber ich würde gerne wissen, wie dies zu tun ist.

Vielen Dank im Voraus!

Antwort

2

sollten Sie die $ _GET werden unter Verwendung der Variablen über die URL übergeben zu verfolgen.

Sie können überprüfen, ob eine Variable unter Verwendung isset ($ _ GET [ 'bearbeiten']) existiert mit isset ($ _ GET [ 'n']) für die Seite

5

Wie jeder sagte ein anderer Einsatz $ _GET

ich Ihre Urls empfehlen modifizieren, so dass sie aussehen ...

file.php?action=edit&n=53 

jetzt können Sie ...

$id = intval($_GET['n']); 

switch($_GET['action']) { 

    case 'edit': 
     // Edit entry 
     break; 
    case 'delete': 
     // Delete entry 
     break; 
    case 'create': 
     // Create new entry 
     break; 
    default: 
     // Invalid action 

} 

PHP-Seite auf $ _GET - http://us.php.net/manual/en/reserved.variables.get.php

+0

auch Blick in $ _POST und $ _REQUEST die sich leicht von $ _GET unterscheiden – KOGI