przewiń do treści

PHP, MySQL i MVC. Tworzenie witryn WWW opartych na bazie danych

Włodzimierz Gajda

$plk = file('filmy.txt');
shuffle($plk);
foreach ($plk as $linia) {
    $tmp = parsuj_film(trim($linia));

    $c = new Criteria();
    $c->add(FilmPeer::TYTUL, $tmp['tytul']);
    $film = FilmPeer::doSelectOne($c);
    if (!$film) {
        $film = new Film();
        $film->setTytul($tmp['tytul']);
        $film->setSlug(string2slug($tmp['tytul']));
        $film->save();
    }

    foreach ($tmp['aktorzy'] as $a) {
        $c = new Criteria();
        $c->add(AktorPeer::IMIE, $a['imie']);
        $c->add(AktorPeer::NAZWISKO, $a['nazwisko']);
        $aktor = AktorPeer::doSelectOne($c);
        if (!$aktor) {
            $aktor = new Aktor();
            $aktor->setImie($a['imie']);
            $aktor->setNazwisko($a['nazwisko']);
            $aktor->setSlug(string2slug($a['imie'] . ' ' . $a['nazwisko']));
            $aktor->save();
        }

        $fha = new FilmHasAktor();
        $fha->setFilm($film);
        $fha->setAktor($aktor);
        try {
            $fha->save();
        } catch (PropelException $e) {
            echo 'ERROR: ' . $e->getMessage() . '<br />';
        }

    }
}

Listing 12.2. Zarys skryptu wstaw.php wypełniający bazę danych filmy

Rozdział 12. Relacje n:m

listing-12-02.txt

Reklama

Szkolenia z Symfony 2.0