Externi script do aplikace

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

Zdravím,

jak mám do aplikace dostat externí php script?

Respektivě takto …

Potřebuji aby aplikace tvořila vCart.

Stáhl jsem si tedy script který jsem umístil do libs.

do bootstrapu jsem přidal do sekce $configurator->createRobotLoader()->addDirectory(__DIR__ . ‚/../libs‘) (samozdrejme k ostatnim)

no a teď mám akci presenteru

// Vytvorit vCart
    public function actionVcart($id) {
        $zakaznici = $this->zakaznici->findAll()->where("id", $id)->fetch();

        // Nastavime pole dat
        $firma = iconv("ISO-8859-2", "utf8", $zakaznici->firma);
        $titul_pred = iconv("ISO-8859-2", "utf8", $zakaznici->titul_pred);
        $jmeno = iconv("ISO-8859-2", "utf8", $zakaznici->jmeno);
        $prijmeni = iconv("ISO-8859-2", "utf8", $zakaznici->prijmeni);
        $titul_po = iconv("ISO-8859-2", "utf8", $zakaznici->titul_po);
        $jmeno_vcard = "";
        if ($titul_pred == "") {
            $jmeno_vcard = $jmeno;
        } else {
            $jmeno_vcard = $titul_pred . " " . $jmeno;
        }
        $prijmeni_vcard = "";
        if ($titul_po == "") {
            $prijmeni_vcard = $prijmeni;
        } else {
            $prijmeni_vcard = $prijmeni . " " . $titul_po;
        }
        $ulice = iconv("ISO-8859-2", "utf8", $zakaznici->ulice);
        $mesto = iconv("ISO-8859-2", "utf8", $zakaznici->mesto);
        $psc = iconv("ISO-8859-2", "utf8", $zakaznici->psc);
        $telefon = iconv("ISO-8859-2", "utf8", $zakaznici->telefon);
        $mail = iconv("ISO-8859-2", "utf8", $zakaznici->mail);
        $web = iconv("ISO-8859-2", "utf8", $zakaznici->web);

        $hledej = array('á', 'č', 'ď', 'é', 'ě', 'í', 'ň', 'ó', 'ř', 'ą', '»', 'ú', 'ů', 'ý', 'ľ', 'Á', 'Č', 'Ď', 'É', 'Ě', 'Í', 'Ň', 'Ó', 'Ř', '©', '«', 'Ú', 'Ů', 'Ý', '®', ' ', ',', ')', '(', '"', '%', ':', '>', '<', '!', '?');
        $nahrad = array('a', 'c', 'd', 'e', 'e', 'i', 'n', 'o', 'r', 's', 't', 'u', 'u', 'y', 'z', 'a', 'c', 'd', 'e', 'e', 'i', 'n', 'o', 'r', 's', 't', 'u', 'u', 'y', 'z', '_', '_', '_', '_', '_', '_', '_', '_', '_', '_', '_');
        $filename = str_replace($hledej, $nahrad, $zakaznici->prijmeni);
        $filename = strtolower($filename);

        $dataArray = array(
            "fileName" => "vcard_" . $filename . "", //file name
            "saveTo" => "upload", //upload dir
            "vcard_birtda" => "",
            "vcard_f_name" => "" . $prijmeni_vcard . "",
            "vcard_s_name" => "" . $jmeno_vcard . "",
            "vcard_uri" => "",
            "vcard_nickna" => "",
            "vcard_note" => "",
            "vcard_cellul" => "",
            "vcard_compan" => "" . $firma . "",
            "vcard_p_pager" => "",
            "vcard_h_addr" => "",
            "vcard_h_city" => "",
            "vcard_h_coun" => "",
            "vcard_h_fax" => "",
            "vcard_h_mail" => "" . $mail . "",
            "vcard_h_phon" => "",
            "vcard_h_zip" => "",
            "vcard_h_uri" => "",
            "vcard_w_addr" => "" . $ulice . "",
            "vcard_w_city" => "" . $mesto . "",
            "vcard_w_coun" => "",
            "vcard_w_fax" => "",
            "vcard_w_mail" => "",
            "vcard_w_phon" => "" . $telefon . "",
            "vcard_w_role" => "",
            "vcard_w_titl" => "",
            "vcard_w_zip" => "" . $psc . "",
            "vcard_w_uri" => "" . $web . ""
        );

        // Include libs
        include_once("../../vendor/others/vcardifl/VCardIFL-PHP5.php");

        // Vytvoreni 1. krok
        $vcard = new VCardIFL($dataArray);

        // Vytvoreni 2. krok
        $vcard->createVcard();

        // Stazeni
        $vcard->DownloadVcard();
    }

Vše by mělo být ok, ale za boha se nemůžu dostat k domu souboru který potřebuji includovat …

Přehlížím ještě něco?

Děkuji za radu

EDIT 1: Jsem asi hloupý … Však já include vůbec nepotřebuji … robotloader jej provede za mě a já jen pridal pole do use … Děkuji

EDIT 2: Ale kazdopadne ted to hodi uplny error … Chyba prohlizece … tato webova stranka neni dostupna … Takze otazka znovu … pomuze mi prosim nekdo? Co delam spatne? Snazil se nekdo includovat toto rozsireni?

Editoval wicked (16. 8. 2014 19:41)

David Kudera
Člen | 455
+
+1
-

Zkus se podívat, jestli něco třeba není v log složce. Jo a ještě koukám, že ta metoda na stažení nevolá nic na ukončení zpracování skriptu. Zkus úplně na konci zavolat tohle:

$this->terminate();
wicked
Člen | 290
+
0
-

Máš mé díky přítely!

$this->terminate();

Opravdu pomohlo, ještě jednou děkuji!