Připojení k webové stránce se souborem xml a načtení dat do DB
- Johny12369
- Člen | 21
Mám aplikaci, ve které uživatel zadá URL RSS 2.0 kanálu (např. http://www.cnews.cz/rssall.xml) do textového pole (addText()). Z tohoto URL aplikace načte všechny title, link, description a pubDate a uloží je do DB. Nevím ale, co musím všechno udělat, abych se na tu zadanou URL mohl připojit. Implementaci provádím v presenteru:
/**
* Vyhledávací formulář nové stránky.
*/
protected function createComponentFindNewForm($name)
{
$form = new Form($this, $name);
$form->addText('site', 'Site:')
->addRule(Form::FILLED, 'Fill the site.');
$form->addSubmit('findNew', 'Find new site')
->setAttribute('class', 'btn btn-info');
$form->onSuccess[] = callback($this, 'findNewFormSubmitted');
return $form;
}
/**
* @param Nette\Application\UI\Form $form
*/
public function findNewFormSubmitted(Form $form){
$ifExists = $this->siteRepository->findByName($form->values->site);
if(count($ifExists) < 1){
$newSite = $this->siteRepository->addSite($form->values->site);
$newId = $this->siteRepository->getMaxId();
???
}
}
Nevím jestli musím něco implementovat v configu nebo někde. Děkuji moc za jakoukoliv odpověď.
- saimons
- Člen | 293
petr.pavel napsal(a):
$xml = file_get_contents($form->values->site);
Jsem se to sem bal uplne napsat, jestli jsem to spravne pochopil.
Pokud bys chtel trosku slozitejsi pristup, da se puzit i cURL funkce pro
nacitani (ma to trochu vic moznosti, nez jen nacteni z dane adresy).
- Michal Vyšinský
- Člen | 608
Nebylo by ještě jednodušší použít simplexml_load_file?
Editoval CherryBoss (16. 5. 2013 12:27)