gpt4 book ai didi

php - 通过 Get 和 php 从 MYSQL 中删除以逗号分隔的数据

转载 作者:行者123 更新时间:2023-11-30 00:20:16 26 4
gpt4 key购买 nike

我正在做的是将值添加到 mysql 表中,每个值用逗号分隔。每个新值都会再次附加到最后一个值,并用逗号分隔。现在这一切都是动态的。我遇到的问题是如何删除选定的值和逗号。我正在使用 php 和 mysql。我可以使用explode 和line[value] 读出这些值。

表名是值

表由 id、value、value_array 组成

$value_selected 将是 $_GET['value']

value_array 是包含所有以逗号分隔的值的列。

数据库从 id 等于 Get 值的值中进行选择。然后返回value_array中的所有值

然后,我分解这些值,并通过 for 循环和 line[value] 读取 value_array 中的每个值。

the code:
start php
$value_selected = $_GET['value'];

$query = mysql_query("SELECT * FROM values WHERE id='$value_selected'");
while($result = mysql_fetch_assoc($query))
{
$check_values = $result['value_array'];
}

$values = explode(",",$check_values);
$count_values = count($values);

for($counter = 0; $counter < $count_values; $counter++)
{
$line = each($values);

$query = mysql_query("SELECT * FROM values WHERE id='$line[value]'");
while($result = mysql_fetch_assoc($query))
{
echo $result['value'].'<br/>';
}
}
php end

我读起来没有任何问题。我想做的是能够通过 GET 选择一个值并从 value_array 中删除该值,同时删除尾随的逗号。我希望我能够更详细地解释我的问题。

最佳答案

使用 foreach 循环,获取分解的字符串并重新组合它减去字符串 $value_selected,方法如下:

$NewValue = '';
$i = 1;
foreach ($values as $Value) {
if ($i > $count_values) {
break;
} else {
if ($Value !== $value_selected) {//reassemble comma-sep string - $_GET['value']
$NewValue = $NewValue . $Value . ",";
}
}
$i++;
}

现在 $NewValue 不再包含 $_GET['value'],因为 if 语句中的串联仅在分解片段 $Value 与 $_GET['value'] 不匹配时发生。此时根据需要更新数据库或 echo $NewValue 等。

关于php - 通过 Get 和 php 从 MYSQL 中删除以逗号分隔的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23305821/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com