繁体   English   中英

根据在HTML选择框中选择的内容运行特定的MySQL查询

[英]Run a specific MySQL query based on what's selected in an HTML select box

这个问题并不是关于某些代码到底有什么问题。 这是关于如何去做某事。 这就是为什么没有代码发布的原因。 有没有一种方法可以根据HTML选择框中的选择来运行特定的MySQL查询? 是否必须在这里使用表格,或者还有其他方法吗?

我现在添加了代码,并尝试使用switch语句方式; 但是,这两个文本框没有被填充。 有任何想法吗? 虚线之间的文本不是真正在代码中,而只是一个占位符。

<?php
---db login info here---

switch($_GET['string'])
{
    case "another string":
       $query = mysql_query("SELECT field1 FROM table1 WHERE id = '1'");
       $row = mysql_fetch_row($query);
       break;
}

echo "<script type='text/javascript'>";
echo "document.getElementById('textbox').value = '$row[0]'";
echo "document.getElementById('textbox2').value = '$row[1]'";
echo "</script>";   
?>

是的,有可能。 您可以使用表格或javascript URL调用或ajax来执行此操作。

您需要执行的操作基于在选择框中选择的值,您需要在switch情况或条件下运行sql语句。 最好的选择是进行此类操作的开关盒。

希望这可以帮助。

有更多方法可以做到这一点

  1. 将MySQL置于每个选项的值中(非常有用,在您不希望再有任何数据库的情况下使用) <- 请勿这样做,这非常不安全

     mysql_query($_GET["selectbox"]); 
  2. 用MySQL查询创建一个数组,并将键放在每个选项的值中

     $mysqlqueryarr = array("SELECT banana FROM monkey","UPDATE monkey SET mouth='open'"); mysql_query($mysqlqueryarr[$_GET["selectbox"]]); 
  3. 切换执行查询的内容

     switch($_GET['selectbox']){ case 'monkey': mysql_query("SELECT monkey FROM zoo"); break; case 'dog': mysql_query("SELECT dog FROM farm"); break; } 
  4. 制作一个超长的if(){...} else if(){...} else if(){etc。 查找选择框中的内容并执行SQL的内容

     if(isset($_GET['selectbox']) && $_GET['selectbox'] == "foood"){ mysql_query("UPDATE wishlist SET needs = needs"); } else if(isset($_GET['selectbox']) && $_GET['selectbox'] == "satisfied") { mysql_query("UPDATE wishlist SET needs = NULL"); } 

这就是我所知道的一切

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM