0

私はAjaXplorerを発見し、データベース間のリンクをステップアップする方法のステップバイステップガイドがあるかどうか疑問に思いました。ファイルhttp://ajaxplorer.info/documentation/developer-documentation/chapter-external-bridge/を読みました。 しかし、それでもその詳細すぎると思います

データベースをリンクするためのステップバイステップのajaxはありますか?

4

2 に答える 2

2

1: bootstrap_plugins.php の auth ドライバーと conf ドライバーを次のように置き換えます。

    "CONF_DRIVER" => array(
        "NAME"      => "sql",
        "OPTIONS"   => array(
            "SQL_DRIVER"    => array(
                "driver"    => "mysql",
                "host"      => "db_server",
                "database"  => "db_name",
                "user"      => "db_username",
                "password"  => "db_password",
            ),
            )
),    

"AUTH_DRIVER" => array(
            "NAME"          => "sql",
            //"NAME" => "remote",
            "OPTIONS"       => array(
            "SLAVE_MODE"  => true,  
                "SQL_DRIVER"    => array(
                                        "driver"    => "mysql",
                                        "host"      => "db_server",
                                        "database"  => "db_name",
                                        "user"      => "db_username",
                                        "password"  => "db_password"
                                            ),

                "LOGIN_URL" => "../login.php",  // The URL to redirect to if a non-logged user tries to access AjaXplorer
                "LOGOUT_URL" => "../logout.php",  // The URL to redirect upon login out
                "SECRET" => "ahmed",// the secret key that you will pass to the glueCode when communicating with it (see below)
                "TRANSMIT_CLEAR_PASS"   => false  // Don't touch this. It's unsafe (and useless here) to transmit clear password.
                                        )
                ),

2: これは、独自のログイン ページからログインする場合です。ユーザー名とパスワードを認証した後、ログイン ページで glucode 行を追加する必要があります。

define("AJXP_EXEC", true);
    $glueCode = "ajaxplorer-core-4.0.4/plugins/auth.remote/glueCode.php";
    $secret = "ahmed";

    // Initialize the "parameters holder"
    global $AJXP_GLUE_GLOBALS;
    $AJXP_GLUE_GLOBALS = array();
    $AJXP_GLUE_GLOBALS["secret"] = $secret;
    $AJXP_GLUE_GLOBALS["plugInAction"] = "login";
    $AJXP_GLUE_GLOBALS["autoCreate"] = false;

    // NOTE THE md5() call on the password field.
    $AJXP_GLUE_GLOBALS["login"] = array("name" => $_POST["login"], "password" => md5($_POST["password"]));

    // NOW call glueCode!
    include($glueCode);

これはうまくいくはずです。

于 2012-09-14T13:52:21.497 に答える
1

1) コードを大幅に変更しないと、AjaxPlorer で SQL Auth メソッドでブリッジを使用することはできません。2) 上記の例は正しくありません。"NAME" に "remote" パラメータを指定する必要があるか、ブリッジを作成しようとしないからです。

これがプロセスの仕組みです...

"AUTH_DRIVER" 設定に "NAME" => "remote" を指定して、ブリッジするように AjaXplorer に指示します。次に、AjaXplorer は、AjaXplorer CMS プラグインを介してログイン試行時に CMS とリンクし、users.ser (シリアル ファイル) にユーザーが存在しない場合は書き込みます。この時点で、AjaXplorer はデータベースをまったく調べようとしません。"SQL_DRIVER" => $SQL_Settings を指定するかどうかに関係なく、データベースは完全にバイパスされます。データベースを参照する唯一の方法は、「AUTH_DRIVER」設定の「NAME」=>「sql」の場合です。ただし、「sql」を使用すると、ブリッジ機能を使用できなくなります。

個人的には、これは大きなバグであり、大きな迷惑だと思います。

これですべての混乱が解消されることを願っています。

于 2013-02-25T16:44:15.717 に答える