我正在创建一个插件,将一些数据添加到插件激活时由插件创建的自定义表中。
我还创建了一个带有表单的设置页面,用户可以将自己的数据插入数据库。
The problem 一切正常,但每次我停用(我不是指卸载)并重新激活插件时,数据都会在表中重复。
请注意,由于数据量很大,我选择使用“longtext”作为表列类型。
使列类型不是唯一的。
My question 如何防止插件在激活插件时插入本应插入数据库的相同数据?
我正在创建一个插件,将一些数据添加到插件激活时由插件创建的自定义表中。
我还创建了一个带有表单的设置页面,用户可以将自己的数据插入数据库。
The problem 一切正常,但每次我停用(我不是指卸载)并重新激活插件时,数据都会在表中重复。
请注意,由于数据量很大,我选择使用“longtext”作为表列类型。
使列类型不是唯一的。
My question 如何防止插件在激活插件时插入本应插入数据库的相同数据?
找到了一个很好的解决方案。
基本上,您可以检查选项名称是否存在,如果已经存在,则不插入数据。
主要思想是,每次数据库架构更改并需要更新用户的数据库时,需要将DB\\u VER增加1,然后为当前DB\\u VER编写数据库升级例程。这将创建数据库模式的某种演变轨迹,这在用户需要从旧版本升级到最新版本时非常有用。WordPress本身以这种方式跟踪其架构更改,因此从WordPress 2升级总是安全的。x到3。x没有太多问题。
关于这项工作的完整解释可以在这里找到http://solislab.com/blog/plugin-activation-checklist/#manage-version
在插件激活时添加一个检查,查看数据库中是否已经存在数据(列/表)?
如果数据aldready存在,则跳过db部分,只需将插件标记为活动。
我正在使用Wordpress作为公交线路规划器的CMS,我已经输入了第一条公交线路的前几个公交车站,现在正在为规划器开发一个PHP脚本。我正在使用这段代码,以及一个允许在Wordpress页面中使用PHP的插件(前提是页面周围有[PHP][/PHP]标记):[php] if (mysqli_connect([db details removed])) { echo \'Connected to database!\'; } else