0

私のウェブサイト (piciscan.co.uk) のユーザーがフォトブックを注文するために使用するフォームを設定しようとしています。フォトブックを注文する際にいくつかのオプションを提供したいと思います。フォームを送信すると、顧客が別のショップ ウェブサイト piciscanshop.co.uk の関連ページにリダイレクトされるようにしたいと思います。

たとえば、ユーザーがページ番号が印刷されたレイアウト 4 のポートレート フォトブックを注文する場合は、piciscanshop.co.uk/portrait-layout4-pagenums-photobook にリダイレクトする必要があります。

これまでのところ、フォームの html があり、いくつかの php を使用して、探しているものを実現できると信じています。

htmlコードは次のとおりです。

<form id="layoutSelector" method="get" action="layoutSelector.php">

<fieldset>
<input type="radio" name="aspect" id="layoutAspectPortrait" value="portrait">
<label for="layoutAspectPortrait">Portrait</label>
<br>
<input type="radio" name="aspect" id="layoutAspectPortrait" value="landscape" checked="checked">
<label for="layoutAspectPortrait">Landscape</label>
</fieldset>

<fieldset>
<input type="radio" name="layout" id="layoutNumber1" value="layout1">
<label for="layoutNumber1">Layout 1</label>
<br>
<input type="radio" name="layout" id="layoutNumber2" value="layout2">
<label for="layoutNumber2">Layout 2</label>
<br>
<input type="radio" name="layout" id="layoutNumber3" value="layout3" checked="checked">
<label for="layoutNumber3">Layout 3</label>
<br>
<input type="radio" name="layout" id="layoutNumber4" value="layout4">
<label for="layoutNumber4">Layout 4</label>
</fieldset>

<fieldset>
<input type="radio" name="pageNums" id="layoutPageNums" value="pageNums">
<label for="layoutPageNums">Page Numbers</label>
<br>
<input type="radio" name="pageNums" id="layoutNoPageNums" value="" checked="checked">
<label for="layoutNoPageNums">No page numbers</label>
<br>
</fieldset>
<div class="submitsAndHiddens">
<input type="submit" value="Submit">
</div>
</form>

だから、私が助けを求めているのは、layoutSelector.php の書き方だと思います。

どんな助けでも大歓迎です。

4

2 に答える 2

0

layoutSelector.php で、 を介してフォーム データを取得し、必要に応じて処理します (渡されたすべてのものを表示するために$_GET['field_name_here']使用します)。var_dump($_GET);次に、 を使用して適切なページにリダイレクトしますdie(header('Location: other_page.php'));

したがって、質問の例では、layoutSelector.php は次のようになります。

<?php
    if ($_GET['layout'] === 'layout4' && $_GET['pageNums'] === 'layoutPageNums') {
        die(header('Location: /portrait-layout4-pagenums-photobook'));
    }
?>

または、すべてのページがこのようにレイアウトされている場合は、次のようにすることもできます。

<?php
    die(header('Location: /'. $_GET['aspect'] .'-'. $_GET['layout'] .'-'. $_GET['pageNums'] .'-photobook'));
?>

さらに良い解決策は、フォームが送信されたときに JavaScript を介してこれらの値を確認し、フォームのアクションを変更することです。そのため、リダイレクトは必要ありません (より高速になります)。

于 2013-04-15T13:34:06.223 に答える
0

layoutSelector.php にこのコードを入れます

$page = $_GET['aspect'] . "-" . $_GET['layout'] . '-' . $_GET['pageNums'] . '-' .'photobook';


header('Location : '. 'http://piciscanshop.co.uk/'.$page);
于 2013-04-15T13:41:11.273 に答える