2012-03-09 13 views
1
<select name="column" id="column"> 
<?php for($i=1; $i<=$sow[0]; $i++){ ?> 
<option value="<?php echo $i ?>"><?php echo $i ?>.column</option> 
<?php }?> 
</select> 

選択ボックスから値を取得するにはどうすればよいですか?私はそれをデータベースに保存します選択ボックスの値をPHPで取得する

+2

'https://www.google.com選択値は、ブラウザでそれを入れて読んでphp'取得 – Michael

答えて

2

$_REQUEST['column'];はあなたに選択されたオプションの値を与えます。

0

あなたselectこのコードを使用 <form method='post' action='...'>にし、「アクション」のファイルにラップ:

<?php 

    //Db connection here... 
    if(array_key_exists('column' , $_POST)) 
    { 
    $selected_option = mysql_real_escape_string($_POST['column']); 

    mysql_query("INSERT INTO tblName(`fldName`) VALUES('$selected_option')"); 
    } 

?> 
0

あなたは動的にデータベースに挿入するためにPHPを使用するようにAJAXを使用する必要がありますいずれか、またはあなたが使用する必要があります送信ボタンを押して、挿入するたびにページをリロードするフォーム。後者を使うと、$ _POST ['column']の中の値を読むことで簡単に値を取得できます。

1

の着信値受け入れ(およびプロセス)することができますPHPページを作成します。次に<form>にあなたの選択をラップし、PHPに提出のいずれか

/MyHandler.php

<?php 

    $column = $_GET['column']; 
    $json = isset($_GET['json']); 

    $db = new PDO(...); 

    $q = $db->prepare('INSERT INTO mytable (column) VALUES (?)'); 
    if ($q->execute(array($_GET['column'])) !== false){ 
    return $json ? json_encode(array('success'=>true)) : "Success"; 
    }else{ 
    return $json ? json_encode(array('success'=>false)) : "Fail"; 
    } 

をまたはAJAXを使用して同じページに送信します(ページの更新は必要ありません)。

フォーム方法:

<form action="/MyHandler.php" method="GET"> 
    <select name="column" id="column">....</select> 
    <input type="submit" value="Save Column"> 
</form> 

それとも、jQueryの/ AJAXの同等:

$('#column').change(function(){ 
    var val = $(this).val(); 
    $.getJSON('/MyHandler.php',{column:val,json:true},function(d){ 
    alert(d.success ? 'Value saved' : 'Value could not be saved'); 
    }); 
});