2012-03-19 21 views
0

この1つは、ここ数日間、私に多くのストレスを与えました。私はTypo3に基づいてCMSを使って作業する複数ページ注文フォームをセットアップしようとしています。しかし、私は非常に困難なページから別のセッション変数を渡して見つけることです。セッションコードは正しいです。私はしかし、私はCMSのルールブックに応じてこれをやっていないと思う。したがって:PHP複数ページ注文フォーム

私は注文書に4ページあります。 4つの.tplファイルを含む4つの.phpファイル。

<form method="post" action="/index.php?puid=3&pageid=176"> 

    <input type="radio" name="rubrik" onchange="toggleDiv('show',0);toggleDiv('check',0)" value="kfz" />KFZ 

    <br></br> 
    <input name="rubrik" id="immo" onchange="toggleDiv('show',1);toggleDiv('check',1)" type="radio" value="immobilien" class="static" />Immobilien 
     <input type="image" action="/index.php?puid=3&pageid=176" value="submit" src="/images/weiter.png" alt="Submit" style="float:right; margin-right:275px; margin-bottom:50px; margin-bottom:50px; margin-left:25px; text-align:left;" ></input> 
</form> 

これは私の最初のフォームです。ページ1。 page2.phpは次のように起動します:

<?php 

    session_start(); 
    $_SESSION['Rubrik wahl'] = 'rubrik'; 

    if (isset($_POST['rubrik'])){ 
    $_SESSION['rubrik']=$_POST['rubrik']; 
    } 

page.tplに私が持っているが:

<form method="post" action="/index.php?puid=3&pageid=177"> 
      <textarea name="inhalt1" cols="40" rows="8" style="width:618px; height:200px;" onKeyDown="textCounter(document.inhalt.inhalt1,document.inhalt.counter,180)" onKeyUp="textCounter(document.inhalt.inhalt1,document.inhalt.counter,180)" ></textarea> 
      <input type="hidden" name="rubrik" value="<?php echo 'rubrik';?>"></input> 
    <br></br><br></br><br></br>  
    <input type="image" action="/index.php?puid=3&pageid=177" value="submit" src="/images/weiter.png" alt="Submit" style="margin-bottom:50px; margin-left:25px; text-align:left; float:right; margin-right:275px; margin-bottom:50px;"></input> 

      </form> 

今、なぜ 'RUBRIK' 変数は、あるページから別のページに通りませんか?

+0

独自のページ( 'page2.php')を呼び出す場合、あなたが記述した問題はTYPO3の範囲外です。また、ページに独自の変数( 'puid'と' pageid')を使用しているようです。 PHPファイルをTYPO3にどのように含めるのですか? – konsolenfreddy

+0

redFACTと呼ばれるCMSを制作した会社は、静的であるためセッションをページ上で実行することはできないと私に言いました。それは可能ですか? – raz

+0

何をしているかによって異なります。 TYPO3 APIをバイパスすると、この種の問題が発生します。通常、TYPO3のコンテンツはキャッシュされているため、可能なパラメータについてTYPO3に通知する必要があります。そのため、TYPO3は各パラメータの組み合わせごとに異なるバージョンをキャッシュに保存できます。既に述べたように、通常のgetパラメータ(サイトのidとpuidは何ですか?)を使用していません。あなたが実際にアーカイブしたいものと現在何をしているのかを教えてくれない限り、私たちはあなたを助けることができるかもしれません。 PHPなしでフォームを設定できる複数のフォーム拡張があります。 – pgampe

答えて

0

あなたは正しいです。あなたはそれをやっていません、あなたはTYPO3と一緒にすべきです。

しかし、私はとにかくTYPO3を使用していないと思います。 redFactは、Web代理店newsagencyによって市販されているCMSです。 TYPO3はオープ​​ンソースのCMSそのもので、active communityでビルドされていますが、単一の会社ではビルドされていません。

TYPO3を使用している場合は、まず書籍を購入するか、TERAPIにいくつかの拡張機能を見てください。

$GLOBALS['TSFE']->fe_user->getKeyを見て、SETKEYと$ GLOBALS [ 'TSFE']を持っている - >storeSessionData()

私は推測、あなたは(あなたのボタンが "weiter" と呼ばれている)は、ドイツ読むことができます。ですから、ドイツのTYPO3の本がたくさんあります。ちょうどそれらを購入し、APIを使い始めるだけです。 Dmitry Dulepovの「Typo3 Extension Development」という、2008年の英語でもかなり良い本を知っていますが、初心者の方にはまだ有効です。

+0

redFACTは実際にはTypo3に基づくCMSです。それは重大な変更を伴うベースチックTypo3です。したがって、Typo3に適用されるルールのほとんどは問題になりません。ただし、あらかじめ定義されたクラスの外に特定のパラメータを定義することができます。しかし、私はそれが.phpファイル内でセッションを開始して実行することを許可していない理由を理解していません。 – raz

+0

可能であれば、extension kickstarterをインストールしてプラグインを作成してください。 – maholtz

関連する問題