Připojení k webové stránce se souborem xml a načtení dat do DB

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Johny12369
Člen | 21
+
0
-

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ěď.

petr.pavel
Člen | 535
+
0
-

$xml = file_get_contents($form->values->site);

saimons
Člen | 293
+
0
-

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).

Johny12369
Člen | 21
+
0
-

:D to bych ani nevěřil, že to může být tak lehký. Děkuji moc :)

Michal Vyšinský
Člen | 608
+
0
-

Nebylo by ještě jednodušší použít simplexml_load_file?

Editoval CherryBoss (16. 5. 2013 12:27)