Oblomow
@Oblomow
SEO-специалист

Как настроить базу данных?

У меня есть сайт на 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 файла
  • Вопрос задан
  • 224 просмотра
Пригласить эксперта
Ответы на вопрос 1
@flekst
Я так понимаю, что речь идёт о таблице user, а столбцы должны быть: corporationname,corporationticker,user.corporationid,alliancename,allianceticker,corporation.allianceid,characterid,characterownerhash,user.id
Верно же? А вот что с чем сравнивается дальше я что-то совсем понять не могу.

Не верно. В запросе идет объединение трех таблиц.
https://www.w3schools.com/sql/sql_join.asp
Вы не понимаете сути реляционных баз данных. Даже не знаю, стоит ли соваться в дебри, не разобравшись с основами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽