phpmyadmin:如果数据最初存储为数组,则无法更改文本的值

标签 php html mysql phpmyadmin textfield

我制作了一个包含以下字段的表格:

`id` type:INT,
`id_list`type:TEXT,
`name`type:VARCHAR(255).

id是我的主键。

从 phpmyadmin 3.4.11.1deb2,我插入一行:

(`null`, `'["1","2","3","4"]'`, `'TEST'`)

并成功保存到表中。

但是,当我尝试更新 id_list字段,而不是包含 ["1","2","3","4"] 的文本字段,我看到一个下拉列表,其中每一行都相当于我存储的文本数组。

这是设计使然还是 phpmyadmin 呈现结果文本的方式存在错误?

enter image description here

我不得不使用不同的表格作为示例,但请注意下拉列表而不是文本字段。

最佳答案

正如@Wrikken 在对您的问题的评论中所说,您可能通过这些字段在表之间建立了一些关系。 我使用了一个非常相似的表结构,并且还添加了一个表来重现我正在谈论的假设:

-- First table, similar to problem table

CREATE TABLE bars ( id int(11), list text, bar varchar(255), PRIMARY KEY (id) );

INSERT INTO bars (id, list, bar) VALUES (1, '["1","2","3","4"]', 'TEST');

-- Second table, to reproduce the assumtion

CREATE TABLE foos ( id int(11), foo varchar(255), PRIMARY KEY (id) );

INSERT INTO foos (id, foo) VALUES (1, 'foo1'), (2, 'foo2'), (3, 'foo3'), (4, 'foo4'), (5, 'foo5'), (6, 'foo6');

从头开始一切正常,我可以将 TEXT 字段编辑为文本:

enter image description here

为了重现“下拉”效果,我打开了一个有问题的 bars 表(带有 TEXT 字段)关系:

enter image description here

并添加了对 foos 的引用,这是一个包含可能 ID 的表格,以数组形式存储在 list TEXT 字段中:

enter image description here

现在,当编辑记录时,我有一个下拉列表而不是 TEXT list 字段的 textarea

enter image description here

因此,请尝试检查您的 TEXT 字段是否涉及任何关系

抱歉,还没有代表发表评论,所以给出一个可能根本不是解决方案的完整答案

关于phpmyadmin:如果数据最初存储为数组,则无法更改文本的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21086316/

相关文章:

php - 使用PHP从IOS设备发送的格式化电子邮件中获取嵌入式电子邮件附件

php - PHP中有没有可以检测IP类型的函数?

php - mySQL - FIND_IN_SET() 找不到该值

php - 如何使用 PHP 在 MySQL 上显示像之前结果一样的序列随机数据?

mysql - 如何在文本文件中导出 MS Access 表

php - 根据php mysql中的值从多个值返回多个值

php - 正则表达式替换冒号和分号之间的冒号

html - 网页中的动画 Logo

javascript - 如何阻止谷歌验证码执行?

javascript - 如何在禁用点击时保持悬停属性