【问题标题】:update a database table by selecting an option using php & javascript通过使用 php 和 javascript 选择一个选项来更新数据库表
【发布时间】:2019-02-08 08:24:44
【问题描述】:

我正在尝试通过使用 php 和 jquery 从选择框中选择一个选项来更新我的数据库中的表列。这样当用户单击一个选项时,该站点将一个文本值返回到数据库中的类别列。我真的尝试理解要应用的概念,任何帮助将不胜感激。

我的数据库表, selecting an option updates the category column 我的代码尝试

enter code here
<div class="upload_wrapper">
        <select id="selectbox" name="options">
            <option value="" selected>Select Category</option>
            <option value="Furniture">Furniture</option>
            <option value="Tableware">Tableware</option>
            <option value="Jewellery">Jewellery</option>
            <option value="Shoes">Shoes</option>
            <option value="Water Bottles">Water Bottles</option>
            <option value="Clothes">Clothes</option>
            <option value="Fabric Patterns">Fabric Patterns</option>
        </select>
    <?php 
    include('connect.php');


    if(isset($_POST['options'])){
        $sql = "INSERT INTO images (category) VALUES ($_POST["options"])";
    }
    $select_category = array('Furniture', 'Tableware', 'Jewellery', 'Shoes', 'Water Bottles', 'Clothes', 'Fabric Patterns');


    ?>
    <script>
    $('#selectbox').change(function(){

        $sql = $($('#selectbox option:selected').text();

        });
    </script>

    </div>

【问题讨论】:

  • 那你想问什么?请详细说明您的问题..
  • 我如何通过选择一个选项来更新类别列,也就是说,如果我点击家具,数据库表中会填充家具的值...
  • 尝试将
  • @Cache 你介意发布一个例子吗?所以我必须创建另一个与我当前页面分开执行查询的 php 文件?如果是这样,表格将是 php 还是 html?我不明白这个请

标签: php jquery mysqli


【解决方案1】:

如果您想在下拉列表的每个选择中将数据插入到表格中,您必须使用 ajax。

首先将此脚本添加到您的 html 中。

<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script> 

把你的脚本改成这样:

$(document).ready(function() {

$('#selectbox').change(function(){

    $sql = $(this).val();


        $.ajax({
        url:"filename of your php file",
        method:"POST",
        data:{
            CatNAME:$sql
            },
        dataType:"json",
       success:function(data){


             alert("INSERTED SUCCESSFULLY");

            }
        })

    });
  });

你对 php 的条件是这样的:

 if(isset($_POST['CatNAME'])){
    $catname = $_POST["CatNAME"];
    $sql = "INSERT INTO images (category) VALUES ('$catname')";
}

注意:不要忘记 ajax 上的 url:,它是 php 文件本身。

【讨论】:

    【解决方案2】:

    你应该能够做到这一点。

    我自己的项目中的示例,我从数据库表中获取一些类别:

    $result = mysqli_query($con,$sql)or die(mysqli_error());
          if (mysqli_num_rows($result) > 0) {
             //open the select tag before the loop
             echo"<select name='category'>";
             //populate the select
             while($row = mysqli_fetch_assoc($result)) {
    
                $name=$row["Name"];
    
                echo"<option value=" .$name.">".$name."</option>"  ;
             }
             //close the select tag after the loop
             echo"</select>";
             echo "<br>";
          } else {
             echo "0 results";
          } ?>
    

    然后我可以在我的 sql 查询中使用此变量显示单击的选项值:

     $category = mysqli_real_escape_string($link, $_REQUEST['category']);
    

    $link 是我的 sql 连接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-16
      • 2017-04-23
      • 1970-01-01
      • 2015-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多