2016-10-08 10 views
-1

フォーム入力を受け取り、URIパスを動的に作成するHTMLフォームを作成しようとしています。フォームをホストするページは純粋なHTMLでなければなりません。私は入力をPHPハンドラ/リダイレクトページに渡すフォームを作成することができましたが、これまでフォーム入力を使用してURIパスを定義することができませんでした。HTMLフォーム入力を使用してURIパスを定義する

http://www.host.com/beds-$_POST["beds"]/baths-$_POST["baths"]')

はPOSTを使用して:

は、私のように見えるURLを取得します。私は$ _POST ["beds"] = $ PathVariableを設定しようとしましたが、それもうまくいきませんでした。誰もが唯一の形をとるための方法を知ってい

GETは、URI文字列がオブジェクトではありませんように、溶液ではないようです=値と私は

/beds-$_GET["beds"]/baths-$_GET["baths"]/beds=2baths=2. 

のように見える文字列で終わります入力値を使用して、URL文字列の特定の部分を変更するために使用しますか?理想的には、ユーザーはHTMLフォームからベッド数と入浴数を選択し、https://www.host.com/beds-#/baths-#/のようなURLにリダイレクトされます。私はPHPのリダイレクトページを試してみました。 PHPや他のスクリプト言語でこれを行う方法を誰かが知っている場合は助言してください。

ありがとうございます!

+1

お願いしたことはできません。フォームは、要求の本文またはクエリ文字列を使用してデータを送信できます。他の動作は、JavaScriptまたはサーバー側のリダイレクトを介して処理する必要があります。私は、HTTPリクエストを適切に使い、あなたが考案したこの愚かな非標準的な方法を試さない方法を学ぶことを提案します。 – zzzzBov

+1

あなたはHTMLと言うだけで、PHPハンドラについて話します。それは問題ありませんが、HTMLのみのページがPHPファイルに送信できることを明確にする必要があります。あなたのフォームのコード、またはあなたが今使っているPHPハンドラはどこですか? – ArtisticPhoenix

答えて

0

ショートソリューション:

  1. JavaScriptを使用。

  2. サーバー側のスクリプトを使用します。

HTMLフォームではこれを行うことはできません。

0

リダイレクト/ユースケースを実行するために必要なコードは次のとおりです。

<?php 

$Path1 = $_POST["beds"]; 
$Path2 = $_POST["baths"]; 

$endpath = "beds-$Path1/baths-$Path2"; 
$startpath = "static/path"; 


$URL="http://host.com/$startpath$endpath"; 
echo '<META HTTP-EQUIV="refresh" content="0;URL=' . $URL . '">'; 
echo "<script type='text/javascript'>document.location.href='{$URL}';  </script>"; 

?> 
関連する問題