我对PHP知之甚少,请原谅我的经验不足。这是我的问题。
我有3张桌子as seen here。
我向用户提供了包含表LOCAIS和CORES的值的复选框。
如果选中,则将值发送到表INFO(我使用implode,这就是为什么您会看到包含多个数字的行)。
我需要做的是:
当从表INFO向用户输出数据时,我需要在表LOCAIS和CORES中更改LOCAL和COR列中各自值的值。
我不想更改数据库中的值,我只想根据ID更改输出,在这种情况下:
id
PS:表格INFO有更多列。每行都连接到一个用户ID,因此我可以过滤条目并将其显示给特定用户。
我尝试了许多不起作用的事情,但这可能是因为我缺乏经验。
那我怎么能这样做呢?
编辑1:我需要显示表格INFO行中的所有信息,并根据其他两个表格更改显示的值。因此,如果在表格INFO中,该行具有以下值:
“ID:1当地:1 Cor:2,3”
输出将是
“ID1,Local:”Brasil,Cor:Verde,Vermelho“。
答案 0 :(得分:0)
info.local = locais.id = locais.local info.cores = cores.id = cores.cor
我假设当您选中复选框并将其插入数据库时,您将其合并为一个字符串?
更好的方法可能是调整数据库结构,以便将id链接到corvalues和local。
但是,如果你坚持这样做,
假设info.id = userid,您将为每个表拉出一个信息行。例如,在ID = 1的情况下,sql查询将是
SELECT LOCAL FROM INFO WHERE id = 1
之后,在PHP中获取结果。以前假设您将数字连接成一个字符串,
$localarray = explode(',', $output_from_mysql);
这会用逗号分解字符串并将它们放入数组中。我们现在有一个数组中每个本地id的值。
遍历此数组并使用下面此查询中的值来获取值。
SELECT LOCAL from LOCAIS WHERE ID = $current_array_value
希望我理解正确的问题:)