2016-04-04 13 views
-1

私はフロントエンドのプログラマですので、私は主にHTMLとCSSで作業します。私は、部品番号を入力して対応する部品の販売シートにリダイレクトできるようにするクライアントを持っています。これはPDFです。フォームのコードは次のとおりです。基本的に私はその人に "1234567"と入力してからhttp://www.website.com/PDFs/1234567.pdfにリダイレクトします。URLにフォームデータを追加してURLにユーザを送ります

これを達成する最も良い方法は何ですか?私はスクリプト言語に精通していません。私を助けるために時間を割いてくれてありがとうございます。

<form action="search.php" method="post"> 
    <input type="text" class="searchField" name="search" placeholder="Enter part number here"> 
    <input type="submit" class="searchBtn" value="Search"> 
</form> 

答えて

1

私はあなたのsearch.phpページが何をしているかわからないんだけど、あなたは、その後に新しいURLにリダイレクトするjavascript関数を使用して、彼らは有効な部品番号で入力するか、404ページを扱うことを確認することができた場合そのパスが機能します。

<form method="post" onsubmit="get_sell_sheet(); return false;"> 
    <input id="part_number" type="text" class="searchField" name="search" placeholder="Enter part number here"> 
    <input type="submit" class="searchBtn" value="Search"> 
</form> 

<script> 
function get_sell_sheet(){ 
    var part_number = document.getElementById("part_number").value; 
    var url = "http://www.website.com/PDFs/" + part_number + ".pdf"; 
    // open in same window 
    // window.location.href = url; 
    // open in new window 
    var win = window.open(url, '_blank'); 
} 
</script> 
+0

ありがとうございます!それは素晴らしい仕事です。新しいブラウザタブでPDFを開くにはどうすればよいですか? – zd428

+0

更新された回答。 –

+0

パーフェクト。再度、感謝します。非常に高く評価。 – zd428

1

上記の回答に追加するには... PHPで

:必要な場所

<?php 
if ($_SERVER['REQUEST_METHOD'] === 'POST') { 
    header('Location: http://www.website.com/PDFs/' . $_POST['search'] . '.pdf'); 
    exit(0); 
} 

は、独自のエラー処理を追加します。

+0

ありがとう!私は今、javascriptオプションで実行するつもりだと思うが、phpが利用可能な場合は素晴らしい代替メソッドです。 – zd428

+0

問題ありません。参考までに、最もアクセスしやすいサイトでは、非JSのフォールバックが適所にあります。ユーザーがJSをオフにしてもアプリケーションが動作することを確認するためにPHPを組み込むことに傷つきません。 – Marcus

関連する問題