小编Tho*_*asK的帖子

将 html 存储在 mysql 文本字段中,还是包含文件?(html 格式的文章)

我想知道我是否应该在我的 MySQL 数据库中存储长 html 格式的文章,或者是否最好存储对文件的引用,并包含它。它不仅仅是段落,还有列表、表格、图像 ( <img src="">'s) 和其他包含边注等的容器。文章通常在 150 000 到 250 000 个字符之间(包括空格)。但这不包括 html 标签。

它可以很好地将其存储在数据库中。但是想知道是否有更好的方法?
本网站没有搜索选项。

mysql

5
推荐指数
1
解决办法
1万
查看次数

更改行时如何更新其他行的“sorting_order”列?

添加新类别和更改现有类别时,我需要为类别设置自定义顺序。我相信代码和 sql 查询在两种情况下都是相同的。在我的webshop_categories-table 中,我有一个so-column(排序顺序 INT),我用它来确定应将类别输出给查看器的顺序。

这是我的类别表外观的简化示例(so = sort_order):

id  |   name   |  so
--------------------
1   |   Shoes  |  1
2   |   Hats   |  2
3   |   Bags   |  3
4   |   Coats  |  4
5   |   Rings  |  5
Run Code Online (Sandbox Code Playgroud)

添加新类别时,无需定义排序顺序,我只需提交一个表单,然后运行如下查询:

$so = $dbh->query('SELECT (MAX(so)+1) FROM webshop_categories WHERE so != 0')->fetchColumn();
$ins = $dbh->prepare('INSERT INTO webshop_categories (name, so)')->execute([$_POST['name'], $so]);  
Run Code Online (Sandbox Code Playgroud)

(这将添加一个新类别,并将其放在最后。在这种情况下,so将设置为 6)

这是添加新类别的非常基本的方法。工作正常。但是在大多数情况下,在处理类别时,需要将其按特定顺序进行展示。

但通常在添加新类别时,人们会希望指定该新类别相对于现有类别应放置的位置。那时更新so-column 对我来说是一个脑筋急转弯......

我用于添加新类别的简化表格:

<form>
  <input type="text" name="name">
  <select name="so">
    <option value="0" …
Run Code Online (Sandbox Code Playgroud)

mysql php sorting update

1
推荐指数
1
解决办法
5849
查看次数

标签 统计

mysql ×2

php ×1

sorting ×1

update ×1