gpt4 book ai didi

php - 复杂的SQL查询,涉及三张表和变量表名

转载 作者:行者123 更新时间:2023-11-29 15:09:03 25 4
gpt4 key购买 nike

我有两个不同的表,我需要从中提取数据

blogs

其中有以下列

blog_id

还有另一个具有变量名称的表,例如

$blog_id . "_options

其中包含以下列:

option_id, option_name, option_value

例如:

option_id = 1, option_name='state', option_value='Texas'
option_id = 2, option_name='blog_name', option_value='My Blog'

最后,我获得了以下 POST 数据

state
<小时/>

这就是我需要做的:获取 POST 数据区域中所有博客的名称。更简洁地说,我需要在 option_name='state'option_value="$_POST['state']' 并且表名称是根据 blog_id 列表创建的(来自表 blogs)末尾附加“_options”。

天哪,我什至不知道我想做的事情是否可以用人的嘴说出来。

无论如何,我认为 stackoverflow 是一个可以提问的地方(如果有的话)。

如果我可以为您澄清任何事情,请告诉我,我会尽力。

顺便说一句,这是因为我正在使用 Wordpress MU,并选择在各个博客的动态创建的表上添加一些额外的设置。

最佳答案

你可以用直接 SQL 来做到这一点,但我认为你最好使用内置的 WordPress 函数,这样如果数据库结构发生变化(这可能是因为 MU 和常规 WP 核心很快就会合并) )你还好。

听起来您希望能够从事件博客中提取有关其他博客的信息。我会分两步完成:

$blogs = get_blog_list(0,'all');
foreach($blogs as &$blog) {
switch_to_blog($blog['id']);
$blog['state'] = get_option('state');
restore_current_blog();
}
restore_current_blog();

这将为您提供 MU 安装上所有事件博客的详细信息列表以及选项表中的状态字段。

是的,它不太优雅,但功能齐全,没有什么困惑。如果您需要在页面加载中多次使用此信息,请使用 WP 的对象缓存来存储变量以供以后使用。还有很多方法可以通过 ajax 或来自父博客的 Web 服务调用它,或者实现 memcache 解决方案,以便在出现问题时可以集中存储和管理这些数据,但我认为如果您使用该对象在前端使用 WP Super Cache 之类的东西进行缓存应该没问题。

关于php - 复杂的SQL查询,涉及三张表和变量表名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1339650/

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