2017-10-09 14 views
-4

私はまだゼロから学んでいます。 ユーザーが以前のレコードにどのように回答したかに基づいてテキストを入力します。HTML PHPはIF文を持つ入力型を使用しますか?

選択したオプションに基づいて...私は "ステータス"レコードの下にステータスを入力したいと思います。

つまり、ユーザーがドロップダウンで2を選択した場合、状態(入力が隠されています)に「開く」という単語を入力します。 ユーザーが-2を選択した場合、ステータスが「閉鎖」で埋められるようにID:

これまでのところ基本的なものしかありません。

<input type="hidden" name="status" value="Open"> 

私の質問はどのように達成しようとしていますか?現在、私のQUERY上記の私のPHPセクションに

$status = $_POST['status']; 
$result = $_POST['result']; 
$result = $_POST['result'] ?? 0; 
     $statuses = [ 
     '-3' => 'Closed', 
     '-2' => 'Closed', 
     '1' => 'Open', 
     '2' => 'Big', 
     '3' => 'Bigger', 
      ]; 
      $status = $statuses[$result]; 

を試し

...

   <select name="result"> 
        <option value="-3">-3</option> 
        <option value="-2">-2</option> 
        <option value="-1">-1</option> 
        <option value="1">1</option> 
        <option value="2">2</option> 
        <option value="3">3</option> 
       </select> 
+0

そして、あなたの質問は何です:あなたはそれがどのように動作するか確認したい場合はここで

$("select[name='result']").on('change', function() { var chosenOption = $("select[name='result'] option:selected").text(); var newText = (chosenOption < 0) ? "Closed" : "Open"; $("input[name='status']").val(newText); }); 

はJSFiddleへのリンクですか? –

+0

[ドロップダウン選択に基づいてデータベースから別の選択ドロップダウンを取り込む](https://stackoverflow.com/questions/11636293/populate-another-select-dropdown-from-database-based-on-dropdown-selection) –

+0

それを更新しました。 助けがあれば助かります! – CarlosDanger

答えて

0

あなたはPHPやJSでそれを行うことができます 。

ので、インクルードが値を持っているあなたのHTMLを更新して、例えば:

<select name="result"> 
    <option value="-3">-3</option> 

PHP

ユーザーはresultを選択し、フォームを送信します。その後:

<?php 
$result = $_POST['result'] ?? 0; 
$statuses = [ 
    ... 
    '-2' => 'Closed', 
    '2' => 'Open', 
]; 
$status = $statuses[$result]; 
// and save to Database 

JS/jQueryの

$(document).on('change', 'input[name=result]', function(){ 
    var val = $(this).val(); 
    if (val == -2){ 
     $('input[name=status]').val('Closed'); 
    } 
    if (val == 2){ 
     $('input[name=status]').val('Open'); 
    } 
}); 
+0

恐ろしいです!私はすぐにテストしましょう! – CarlosDanger

+0

大丈夫そう..私が持っている_____ $ステータス= $ _POST [ '状態']; ____ and____ $結果= $ _POST [ '結果']; ________私は$結果になります状態は$のステータスと結果になりますクエリINTO INSERTを持って...結果は上記の私のoption文... [OK]を – CarlosDanger

+0

を持つ偉大な作業ですが、私は明らかに混乱を作るイム、私のオリジナルのポストを更新しました。私のHTMLセクションでPHPをやり直してはいけませんか? – CarlosDanger

0

は、おそらく私が正しく質問を理解していないのですが、私はこれが良いPHPよりJavascriptを使用して解決されるだろうと考えています。その理由は、PHPがサーバー側の言語であるため、入力を変更する前にフォームを提出する必要があるからです(PHPとJavascriptを組み合わせたAJAXを使用している場合を除く)。

JavaScriptはクライアント側の言語であり、探しているものを実行できます。 jQueryの使用: https://jsfiddle.net/turtlechief/b0z2fyfx/

関連する問題