2016-05-11 10 views
1

別のファイル(redirect.php)の関数を使用してホームページを含むファイルにアクセスしようとしています。 MyWebsite/main/main.htmlこれは私がアクセスしたいファイルの場所です。私はここにこだわってredirect::toMain('main.html');私はホームページに誘導されるように完全なパスをリンクする方法がありません。私は('main.html')の値を関数toMain()に渡そうとしましたが、機能しませんでした。下のフォルダの場所。関数を使用してファイルをリダイレクトする方法

Screenshot

だから名前がMyWebSiteはメインフォルダであり、それは、下記のサブフォルダが含まれています。

  • 機能(フォルダ)リダイレクト機能
  • メイン(フォルダ)はHTMLが含ま含ま。 main.html私のホームページに設定されています。これは、ユーザーがリダイレクトする場所です。

クラス:redirect.php場所:ここに名前がMyWebSite /機能/ redirect.php

<?php 

class redirect 
{ 
public static function toMain($location = null) 
{ 
    if($location) 
    { 
     header('Location: ' . $location); 
     exit(); 
    } 
} 
} 
$a = new redirect(); 
?> 

loginProcess.php

<?php 

session_start(); 

require_once('../connection/connection.php'); 
require_once('../connection/loginCRUD.php'); 
require_once('../function/redirect.php'); 

if(isset($_POST['submit'])) 
{ 
$dbusername = $_POST['loginUsername']; //Store value of textfield in array 
$dbpassword = $_POST['loginPassword']; 

if(!empty($dbusername) && !empty($dbpassword)) 
{ 
    if((new loginCRUD)->readLogin($dbusername,$dbpassword)) //If true 
    { 
     // echo "You are logged in!"; 
     $_SESSION['loginUsername'] = $dbusername;//Session are stored in array. 

     // redirect the user to the home page 
     redirect::toMain('main.html'); 
    } 
    else 
    { 
     echo "Incorrect username and/or password"; 
    } 
} 

}//end of isset 
?> 
+0

は、すべてのリダイレクトは、名前がMyWebSite /メイン/ XXXXXに行くのだろうか? –

+0

@Andrewはいそれは 'main.html'にリダイレクトされます – Francisunoxx

答えて

0

が、その私がでしょう一つの方法ですこれを行う:

class redirect 
{ 
    private static $baseUrl = 'http://localhost/MyWebsite/main/'; 
    public static function toMain($location = null) 
    { 
     if($location) 
     { 
      header('Location: ' . self::$baseUrl . $location); 
      exit(); 
     } 
    } 
} 

ザ・$ baseUrlにもこのことができます。

private static $baseUrl = '/MyWebsite/main/'; 

は、名前がMyWebSiteがhttp://で始まるか、それは相対URLにリダイレクトすることを確認してください。メソッドに静的にアクセスしているため、$a = new redirect();は必要ありません。

今、あなたはこれを行うことができます。

​​
+0

htmlにリダイレクトする方法はありますか? – Francisunoxx

+0

@Francisunoxxはい、私の答えに変更を加えることができます。 –

+0

私のURLは重複していませんでした。 – Francisunoxx

関連する問題