У меня есть сайт на Wordpress. Недавно решил интегрировать в него SSO авторизацию, благо необходимый код нашёлся на гитхабе. Иначе без навыков программирования я бы и не справился.
Сейчас просматриваю этот код и вижу, что обращения к базе данных выглядят примерно следующим образом:
require_once('db.inc.php');
$sql="select corporationname,corporationticker,user.corporationid,
alliancename,allianceticker,corporation.allianceid,characterid,characterownerhash,
user.id
from user
join corporation on user.corporationid=corporation.corporationid
join alliance on corporation.allianceid=alliance.allianceid
where
user.characterid=:characterid
and characterownerhash=:characterhash
";
$stmt = $dbh->prepare($sql);
$stmt->execute(array(':characterid'=>$response->CharacterID,':characterhash'=>$response->CharacterOwnerHash));
while ($row = $stmt->fetchObject()) {
$userdetails=$row;
$userid=$row->id;
}
В связи с этим у меня несколько вопросов!
1) Стоит ли подключать вторую базу данных?
Мне не хотелось бы рисковать основной, но если подключение второй может вызвать проблемы, то мне хотелось бы этого избежать.
2) Корректно ли работать с базой описанными командами или они могут некорректно работать на Wordpress?
Знаю, что у WP есть свои способы работы с БД, но мне бы не хотелось переписывать гору кода без необходимости.
3) Какие таблицы и столбцы в базе данных нужно создать, чтобы описанный выше код сработал?
Я так понимаю, что речь идёт о таблице user, а столбцы должны быть: corporationname,corporationticker,user.corporationid,alliancename,allianceticker,corporation.allianceid,characterid,characterownerhash,user.id
Верно же? А вот что с чем сравнивается дальше я что-то совсем понять не могу.
Полный текст этого php файла