1

一直卡在这个上。我正在使用来自 jquery 的 x-editable,我通过 php 循环调用我的数据。这是我所拥有的,我的标题没有错误,只是不知道我哪里出错了?我有什么遗漏或做错了吗?一切正常,只是不会更新mysql中的记录?

这是我的循环:

<?php
$stmt = $db->query('SELECT * FROM retailers ORDER BY id ');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo "<tr>
<td>
<a href='#' data-type='text' data-pk='{$row['id']}' data-placement='right' class='store'  data-url='actions/post.php' data-title='Store Name:' data-name='store'  value='{$row['store']}'>{$row['store']}</a>
</td>
</tr>"; } ?>

这是我的 PDO 更新:

$store = $_POST['store'];
$id = $_POST['id'];

$sql = "UPDATE retailers SET store=?
        WHERE id=?";
$q = $db->prepare($sql);
$q->execute(array($store,$id));

有什么想法我哪里出错了吗?

(调用 x-editable)

 $(document).ready(function() {
$('.store').editable();

});
4

1 回答 1

0

查看X-editable examples,您似乎会想要使用

$id = $_POST['pk'];

此外,正如我在上面的评论中提到的,使用PHP 的替代语法可以更轻松地创建标记。此外,value这里的属性无效。如果必须使用它,我认为 X-editable 可以使用data-value,但它也可以从元素的 HTML 内容中读取。

<?php
$stmt = $db->query('SELECT * FROM retailers ORDER BY id ');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) : ?>
<tr>
    <td>
        <a href="#" data-type="text" data-pk="<?= $row['id'] ?>"
           data-placement="right" class="store" data-url="actions/post.php"
           data-title="Store Name:" data-name="store"><?= htmlspecialchars($row['store']) ?></a>
    </td>
</tr>
<?php endwhile ?>
于 2013-10-08T02:33:30.927 回答