Как я могу поместить эти xml данные в mySQL, используя PHP - PullRequest
0 голосов
/ 10 апреля 2020

Я пытаюсь записать данные каналов xml в мою таблицу SQL в данных, основанных на этих xml данных, представленных ниже. Я пытаюсь сделать то же самое с таблицей программ, используя файл xml. Мне было интересно, есть ли способ сделать вставку, используя PHP, если так, пожалуйста, помогите мне.

<tv generator-info-name="xmltv.co.uk" source-info-name="xmltv.co.uk">
  <channel id="0052a71acac348ff93f5680aa9c125eb">
    <display-name>2910</display-name>
  </channel>
  <channel id="00da025711e82cf319cb488d5988c099">
    <display-name>Sony Movies</display-name>
  </channel>
  <channel id="00daa0e366e2f29473f9112302912ff6">
    <display-name>Anytime</display-name>
  </channel>
  <channel id="00dfea977320f17bb419abaa1f079f39">
    <display-name>Good Food</display-name>
    <icon src="/images/channels/00dfea977320f17bb419abaa1f079f39.png"/>
  </channel>
<programme start="20200323234000 +0000" stop="20200324003000 +0000" channel="ffd49fe9acd778774b4933e10b6afb75">
    <title lang="en">All Elite Wrestling: Dynamite</title>
    <desc lang="en">Action includes the reveal of the Exalted One for the Dark Order. Plus, Best Friends take on Lucha Bros. S1 Ep24</desc>
    <episode-num system="onscreen">s01.e24</episode-num>
  </programme>
  <programme start="20200323123000 +0000" stop="20200323133000 +0000" channel="ffd49fe9acd778774b4933e10b6afb75">
    <title lang="en">Loose Women</title>
    <desc lang="en">Join the Loose Women panellists as they interview celebrity guests and discuss the day's most topical issues, from current affairs to celebrity gossip and the latest showbiz news.</desc>
  </programme>
  <programme start="20200323100000 +0000" stop="20200323123000 +0000" channel="ffd49fe9acd778774b4933e10b6afb75">
    <title lang="en">This Morning</title>
    <desc lang="en">The This Morning team bring you top celebrity guests, lifestyle advice, stunning competitions and award-winning features, all topped off with a sprinkle of humour for good measure.</desc>
  </programme>
</tv>

1 Ответ

0 голосов
/ 10 апреля 2020

Здравствуйте и добро пожаловать как новый участник.

Как уже отмечали другие, phpMyAdmin - это инструмент для связи с MySQL, который является базой данных, которую вы используете.

Мы не можем написать весь код для вас, но я хочу помочь вам в этом. Замените «display-name» на dispayname «все места в вашем файле xml.

После этого вы можете использовать Simple XML, который является частью php. После завершения sh это, вам нужно создать запрос для SQL в php, который вставит эти строки.

<?php

include 'xml.php';

$xml = new SimpleXMLElement($xmlstr);

function GetTVChannels($xml) {
        $TvChannels=[];

        $i=0;
        foreach ($xml->channel as $channel) {
            $TvChannels[$i]["displayname"]=$channel->displayname;
            $i=$i+1;
        }
        return $TvChannels;
}


function GetTVTvProgrammes($xml) {
    $TvProgrammes=[];

    $i=0;
    foreach ($xml->programme as $programme) {
        $TvProgrammes[$i]["title"]=$programme->title;
        $TvProgrammes[$i]["desc"]=$programme->desc;
        $TvProgrammes[$i]["episode"]=$programme->episode;

        $i=$i+1;
    }
    return $TvProgrammes;
}

GetTVChannels($xml); // Get array of all TVChannels
GetTVTvProgrammes($xml); // Get array of all TVTvProgrammes
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...