所以现在我有 php 可以从数据库表的列中删除 html。看起来像这样:
$result = mysql_query("SELECT id_199 FROM exp_data");
while ($row = mysql_fetch_array($result)) {
echo strip_tags($row['id_199']);
echo "\n";
}
当我回应这一点时,我从列(id_199)中获取了没有 html 的所有内容,所以我知道它的工作原理。请记住,并非该列中的每一行都包含内容。我的问题是如何扩展此代码以使用不带 html 的文本更新数据库?
让我进一步澄清,我想实现两件事。
- 从列中的数据中去除 html
- 更新该列,现在用剥离的数据替换旧数据
once如何实现这一目标?
最佳答案
$result = mysql_query("SELECT `id`, `id_199` FROM `exp_data`");
$data = array();
$i = 0;
while ($row = mysql_fetch_array($result)) {
if(!empty($row['id_199'])) { //Check for empty value
$data[$i] = array($row['id'] => $row['id_199']);
$i++; // $i + 1
}
}
首先,您需要将 strip 数据存储在新数组中。
之后,您可以对该数组执行 foreach()
:
foreach($data as $i) { // Foreach $i
foreach($i as $id => $row) {
$query = "UPDATE `exp_data` SET `id_199` = '$row' WHERE `id` = '$id'";
mysqli_query($connect, $query);
}
}
如您所见,您还需要一个唯一的其他 ID 或其他列来更新 id_199
列。这可能不是您问题的完整答案,但它至少应该让您开始。
关于PHP 从列中删除标签,然后更新数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25906720/