【问题标题】:Checkbox changing database right away复选框立即更改数据库
【发布时间】:2013-09-09 08:09:37
【问题描述】:

我的数据库出现问题并在其中设置了一些信息。我有一个复选框,当我点击它时,我希望它在我点击复选框时立即更改数据库中的值。我尝试了一些 if(isset($_POST['showToilet']){} 然后更改它。它不起作用,因为它可能必须重置页面。

我的一个朋友说这可能是一个 javascript 的东西。遗憾的是我以前从未使用过 JS。

所以我的问题是:我可以通过单击复选框立即设置数据库信息吗?

您可以在下面找到我的代码:

    <h2 align='center'>Toilet gegevens</h2>
    <?php



    $queryToilet = "SELECT * FROM toilet;";
    $resultToilet = mysql_query($queryToilet);

    echo "<table border ='1' align='center'>
        <tr bgcolor= 'grey'>
            <th>Show</th>
            <th>Toilet</th>
            <th>Art. nr.</th>
            <th>Art. nr fab.</th>
            <th>EAN nr.</th>
            <th>Closet</th>
            <th>Closet Afvoer</th>
            <th>Bevest schrf</th>
            <th>Reservoir</th>
            <th>Hoekstop kr</th>
            <th>Closet zitting</th>
            <th>Imagenaam</th>
            <th>Documentnaam</th>
            <th>Edit</th>   
        </tr>";

    while($row2 = mysql_fetch_array($resultToilet))
        {
             echo "<tr bgcolor ='white'>";
             if($row2['Show'] == 1)
             {
                echo "<td><input type='checkbox' name='showToilet' value='true'  checked/></td>";
             }
             else
             {
                echo "<td><input type='checkbox' name='showToilet' value='true'/></td>";
             }

             if(isset($_POST['showToilet']))
             {
                $queryChangeShow = "Update toilet SET show ='" . $_POST['Show'] . "'";
             }
             echo "<td>" . $row2['Toilet'] . "</td>";
             echo "<td>" . $row2['Artnr'] . "</td>";
             echo "<td>" . $row2['ArtNrFabrikant'] . "</td>";
             echo "<td>" . $row2['EANnr'] . "</td>";
             echo "<td>" . $row2['Closet'] . "</td>";
             echo "<td>" . $row2['ClosetAfvoer'] . "</td>";
             echo "<td>" . $row2['Bevestigingsschroef'] . "</td>";
             echo "<td>" . $row2['Reservoir'] . "</td>";
             echo "<td>" . $row2['Hoekstopkraan'] . "</td>";
             echo "<td>" . $row2['Closetzitting'] . "</td>";
             echo "<td>" . $row2['ImagePath'] ."</td>";
             echo "<td>" . $row2['DocumentPath'] . "</td>";
             echo "<td><a href=EditToilet.php?id=" . $row2['Artnr'] . ">edit</a></td>";
             echo "</tr>";
         }  
        echo "</table><br />";

【问题讨论】:

    标签: php javascript database checkbox


    【解决方案1】:

    如果没有 Javascript,则无法在不重新加载页面的情况下向服务器发送请求。

    使用Javascript,您可以向服务器发送AJAX request,服务器可以立即处理该操作,并返回有关程序成功或失败的信息。

    【讨论】:

      【解决方案2】:

      您可以通过 Javascript 使用 ajax 请求来实现这一点,或者,如果您想让它更容易,可以使用 jQuery ajax 请求!

      检查this

      例子:

      $.ajax({
        type: "POST",
        url: "some.php",
        data: { name: "John", location: "Boston" }
      }).done(function( msg ) {
        alert( "Data Saved: " + msg );
      });
      

      【讨论】:

        【解决方案3】:

        按照以下步骤操作:

        1. 点击复选框后,捕获您需要设置的变量。
        2. 通过 Ajax Post 将其作为数据传递
        3. 在另一个php页面的处理页面中,获取数据并 使用普通的 php 查询在数据库中更改它。
        4. 然后将必要的响应发送到您的主页。

        最初,您需要时间来了解该过程。但它构成了任何基于 AJAX 的操作的基础。

        一切顺利。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-09-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-06-23
          • 2023-01-20
          • 1970-01-01
          • 2014-07-09
          相关资源
          最近更新 更多