php - MySQL 抛出无法执行查询。命令不同步

标签 php jquery mysql

我有一些问题。我的 mysql 抛出一些错误:

无法执行查询。命令不同步;您现在无法运行此命令

我了解到语法本身可能与其他函数冲突。

我的情况是,我有一个从数据库获取结果的页面。并使用 while 语句,它显示在文本框中。现在,我想更新同一页面中的值。由于有些值不是文本输入,因此获取这些值并不容易。我在 while() 函数中放置了另一个 php function() 。

语法如下:

用于渲染文本框的 while 语句

     include '../functions/configuration.php';
        $query = "call sp_callViewTransc($ids)";
        $result = mysql_query($query) or die("Could not execute query. " . mysql_error());
        **while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {**
        **<!-- WHILE FUNCTION IS GETTING RESULT FROM DB -->**
            ?>
            <div class="tabbable"> <!-- Only required for left/right tabs -->
                <ul class="nav nav-tabs">
                    <li class="active"><a href="#tab1" data-toggle="tab">General Information</a></li>
                    <li><a href="#tab2" data-toggle="tab">Computer Information</a></li>
                    <li><a href="#tab3" data-toggle="tab">OS and Licenses</a></li>
                    <li><a href="#tab4" data-toggle="tab">Remarks</a></li>
                </ul>
                <div class="tab-content">
                    <div class="tab-pane active" id="tab1">
                        <form class="form-horizontal">
                            <p>Asset General Information. Some order goes here.</p>
                            <fieldset>
                                <!-- Text input-->
                                <div class="control-group">
                                    <label class="control-label">Location</label>
                                    <div class="controls">
                                        <input id="idms_location" name="idms_location" type="text" placeholder="location" class="input-xlarge" readonly="readonly" value="<?php echo $row['idms_location']; ?>">
                                        <?php getLocation(); ?>
                                        **<!-- getLocation() function is another function in another file that getting dropdown values-->**
                                    </div>
                                </div>

有没有php函数可以解决这个问题?

** 更新 **

这是我在 php 中获取组合框结果的第二个函数

   function getLocation() {
     $query_location = "SELECT location, idms_location FROM ms_location";
     $location_list = mysql_query($query_location) or die("Could not execute query." .     mysql_error());
     echo "<select>";
       while ($row = mysql_fetch_array($location_list, MYSQL_ASSOC)) {
     echo("<option value='" . $row['idms_location'] . "'>" . $row['location'] . " </option>");
   }
     echo "</select>";
     mysql_close();
 }

最佳答案

这是由于在循环另一个调用的结果时调用 mysql_query 获取数据而导致的。

目前,您正在为每个结果调用 getLocation。因此,如果您有 10 个结果,则需要对数据库进行 10 次调用,这些调用都将返回相同的结果。

相反,更改 getLocation 调用以返回字符串并在循环之前调用它:

$location = getLocation();

然后在循环中你可以这样做:

<?php echo $location ?>

关于php - MySQL 抛出无法执行查询。命令不同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17548727/

相关文章:

php - Paypal RestAPI 没有触发 Webhooks

Javascript 从日期中删除日期名称

javascript - jQuery - 如何为我的函数添加淡入/淡出效果,而不仅仅是设置可见性隐藏/可见

php - INSERT ON DUPLICATE KEY UPDATE IF 语句

php内置网络服务器错误日志(Zend Framework 2 App)

php - iFrame 中的 jQuery 隐藏 div

php - php 中是否有三元运算符的反向版本?

jQuery : Tooltip x-axis label for bar chart JQPlot

mysql - 计算每个唯一 ID 的过期和未过期行数

MySQL - 递归树结构