如何从下拉列表中获取选定的值,因此可以在mysql语句中使用它

时间:2013-03-06 09:49:43

标签: php javascript mysql

是否可以创建一个允许您从下拉列表中获取所选值的函数,因此可以在可以print_r输出某些信息的mysql语句中使用它?

我将所有内容放在一个页面中。在我删除了一些不相关的信息之后,这是我的页面。

"SELECT emd.m_field_id_8 as refer
FROM transactions as t
left join exp_members as em on (t.cardid-10000000 = em.member_id) 
left JOIN exp_member_data emd on em.member_id = emd.member_id
Group BY emd.m_field_id_8 limit 20");


foreach ($resultsdropdown->result_array() as $key)
{
$array1[] = array("Refer" => $key['refer']);
}

Html头。

</script>
<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){ 
    $('#button1').click(function(){ 
            alert($('#combo').val());
    });
});
</script>

Html body。

<select id="combo">
<?
foreach($array1 as $key => $value)
{
echo'<option value="'.$value['Refer'].'">'.$value['Refer'].'</option>';
}
?>
</select>
<input id="button1" type="button" value="Click!" />

这是我被卡住的地方。

我的想法是从我的javascript中获取变量,所以它可以在一个mysql语句中使用,可以print_r输出一些信息吗?

这是mysql语句,我想从我的下拉列表中选择我选择的变量。

"SELECT t.*, em.*, emd.*
FROM transactions as t
left join exp_members as em on (t.cardid-10000000 = em.member_id) 
left JOIN exp_member_data emd on em.member_id = emd.member_id
ORDER BY t.created where emd.m_field_id_8 = 'VARIABLE?'");

但我不知道在哪里放我的sql?我不能放入php区域,因为javascript无法将变量发送到php。另一个问题是如何从我的下拉列表中选择变量到mysql ..

你有什么想法吗?我希望你能提供帮助。如果你有任何问题,请问我。

2 个答案:

答案 0 :(得分:0)

将HTML部分放在一个页面上,然后在另一个页面上编写查询,如下所示:

$query = "SELECT t.*, em.*, emd.*
FROM transactions as t
left join exp_members as em on (t.cardid-10000000 = em.member_id) 
left JOIN exp_member_data emd on em.member_id = emd.member_id
ORDER BY t.created where emd.m_field_id_8 = 'VARIABLE?')";

mysql_query($query);

现在尝试使用HTML页面中的Ajax从您创建的php页面中获取查询中的数据。

请参阅http://api.jquery.com/jQuery.ajax/以了解如何实施ajax。

<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.3.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){ 
    $('#button1').click(function(){ 
            var comboValue = $('#combo').val();
    });
});
</script>

尝试通过ajax将javascript变量comboValue发送到php文件,然后您就可以根据需要使用它,并且可以在同一个HTML页面上获得响应

答案 1 :(得分:0)

(编辑) 注意:我正在考虑您知道如何在服务器端获取表单元素的值。

如果您需要在从下拉列表中选择一个值时立即更新您的页面..请考虑使用ajax ..或者使用纯javascript方式,或者您可以使用jquery的ajax(在我看来,它更容易学习和使用)。

第二种方式是您可以在下拉列表中选择新值(使用javascript)发布页面。页面会根据您的选择刷新新内容。

我希望它有所帮助。 在这里你可以找到关于jquery的ajax。 http://api.jquery.com/jQuery.ajax/
您可以在搜索引擎中搜索更多资源。