Query Concatenation

时间:2018-08-28 作者:Cody Tetreault

我不知道如何在MySQL查询中正确连接PHP变量。

$convert_class_id$convert_char_id 正在保存数值。

当我尝试激活插件时,出现了一个错误:

分析错误:语法错误,意外的“=”,应为“,”或“)”

$skill_select = $wpdb->get_results(
                    $wpdb->prepare("
                SELECT skill_name, char_id, um_id, c.class_id
                FROM `wp_ml_skill_class` sc
                JOIN `wp_ml_skill` s ON (s.skill_id = sc.skill_id)
                JOIN `wp_ml_character` c
                WHERE c.class_id = " . $convert_class_id . " " AND c.char_id = " " . $convert_char_id . "
                "));
提前谢谢。

1 个回复
最合适的回答,由SO网友:nmr 整理而成

在SQL语句中,使用占位符而不是变量:%s (字符串)或%d (编号)。的第二个参数prepare() 是要替换为占位符的变量数组。

$skill_select = $wpdb->get_results(
                $wpdb->prepare("
            SELECT skill_name, char_id, um_id, c.class_id
            FROM `wp_ml_skill_class` sc
            JOIN `wp_ml_skill` s ON (s.skill_id = sc.skill_id)
            JOIN `wp_ml_character` c
            WHERE c.class_id = %d AND c.char_id = %d",
            [$convert_class_id, $convert_char_id]));

结束

相关推荐

css media query question

我想这是一个新手问题,但在这里。我一直在编辑一个子主题CSS,并试图更改此特定代码@media (min-width: 769px) #carousel-hestia-generic span.sub-title { font-size: 24px; } 这是我从铬合金中看到的。当我把它添加到我的风格中时。css在我的孩子的主题,使字体大小,让我们说36px,它不会改变。实际上,Chrome显示了删除线。。。the element I w