2016-11-06 3 views
0

私はPHPでページを開こうとしているときに問題が発生しています。 私はこれはPHPのページを呼び出さない

<li><a href="contact.php">Contact</a></li> 

ような別のphpファイル(index.phpを)での呼び出しは、それは動作しますが、私は

<li><a href="/index.php?cmd=contact">Contact</a></li> 

を書くときには、URLに表示されて作成されたページcontact.phpを持っていますが、ページが見つかりません! 問題は設定されていますが、問題を解決する方法はわかりますか?

答えて

0

PHPはこのように動作しません。 index.phpは、渡されたGET引数cmdで何をしたいのか分かりません。あなたがこのように振る舞うためにインデックスコントローラを持つようにしたい場合:

<li><a href="/index.php?cmd=contact">Contact</a></li> 

は、あなたは、コントローラのようなものを作成する必要があります。例えば

あなたがロードしようとしているどのファイルを制御したい場合は、このようなindex.php表情を作る:

if(isset($_GET['cmd'])) { 
    $cmd = $_GET['cmd']; 

    switch($cmd) { 
     case 'contact': 
      include 'contact.php'; 
      return; 
    } 
} 

または複数のPHPファイルを持っている場合、それは次のようになります

if(isset($_GET['cmd'])) { 
    $cmd = $_GET['cmd']; 
    $file = "{$cmd}.php"; 

    if(file_exists($file)) { 
     include $file; 
     return; 
    } 
} 
関連する問題