Jquery Mobile/Coldfusion8 でユーザー認証をセットアップしようとしています。私は Coldfusion を 1 週間しか使っていないので、まだ不安定な状態です。
次の Jquery Mobile ページがあるとします。
// "outside"
index.cfm
content.cfm
content2.cfm
content3.cfm
// "inside"
secure.cfm
ユーザーは、ログイン フォームを使用してすべての外部ページからログインできる必要があります。
複数のコンテンツ ページとそれぞれに独自のログインがある (これは変更できません) ことで、これを処理する最善の方法を考えようとしています。問題は、ページを変更するとき、常に DOM に少なくとも 2 つのページがあるため、「LoginForm」という名前の 2 つのログイン フォームが存在することです。
それでも試してみましたが、このエラーが発生しています:
Variable THISFORM is undefined
なぜかわからないのですか?おそらく、index.cfm ページに既に「loginForm」があるためです。
私の質問:
私のエラーの手がかりはありますか?
このようなものを設定する最良の方法は何でしょうか? これは常にDOMにとどまるアンカーページになるため、ログインルーチン全体をindex.cfmに入れる必要があると思います。また、ログイン フォームをテンプレート内に配置し、これをすべてのページに取り込みます。これも適切だと感じています。
しかし、ログインフォームの複数のインスタンスをどのように処理する必要がありますか?
手伝ってくれてありがとう
編集: いくつかのコード:
<!-- TEMPLATE -->
<CFFORM ACTION = "#ThisForm#" NAME = "LoginForm" >
<input name = "Username2" id="Username2" type="text" />
<input name = "Password2" id= "Password2" type="password" />
<input type = "submit" id="CheckLogin" name="CheckLogin" value="<cfoutput>#tx_login#</cfoutput>" />
</CFFORM>
<!-- INDEX PAGE and content pages all look like this -->
<cfoutput>
<div data-role="page" id="starter">
<div data-role="header" data-position="fixed" data-theme="a">
<h1><cfoutput>#tx_willkommen#</cfoutput > </h1>
<!-- this calls the template -->
<CFINCLUDE TEMPLATE="../templates/tmp_pop.cfm">
</div>
<div data-role="content "...
</cfoutput>
<!-- inside application.cfm -->
<cfif Session.ative EQ "No ">
<CF_index datasource="mydatabase "
...>
<!-- inside index.cfm -->
<cfif Session.ative EQ "No ">
<CFPARAM NAME="Attributes.Datasource ">
<CFPARAMs more params...
</cfif>
これが役立つかどうかはわかりませんが、これから基本的な構造を取得する必要があります。セッションがアクティブでない場合、index.cfm でのみパラメーターを設定していることが問題である可能性があります。ユーザーが index.cfm に移動すると、params が設定され、セッションが作成されます。次のページを DOM に取り込むと、これらのパラメーターはまだ有効であると思いましたね。