Úplný začátečník bez znalosti php, problém hned v úvodu

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

Zdravím,

v životě jsem nic neprogramoval a rád bych se naučil pracovat s nette. Používám win 7 a první problém na který jsem narazil byla instalace composeru – pravděpodobně vyřešeno, ale jistý si nejsem. Při spuštění cmd mi asi pracuje, pomocí kodu ($ composer create-project nette/sandbox nazev-projektu) jsem založil nový projekt, ale (http://localhost/nette-blog/www/) mi nenaběhne.

Jsem opravdu začátečník, takže prosím o radu ohledně spouštění composeru, v čem je chyba že nenabíhá (http://localhost/nette-blog/www/) a jak začít pracovat? Existuje nějaká podrobná příručka krok za krokem, abych si to „otukal jak a co“? Potřebuju mít zaplé nějaké servery? V čem budu psát php? Předem díky!

Mysteria
Člen | 797
+
0
-

Nenaběhne znamená co? Nějaká chyba? Nette chyba, Apache2 chyba? Málo informací. :)

Burrn.P
Člen | 28
+
0
-

Aha, koukám že píšeš ohledně Apache, ten nemám ani zapnutý..

  1. nainstaloval sem wamp
  2. instalace composeru do php souboru ve wamp
  3. otevření cmd a napsání viz. nahoře

nic dalšího jsem nespouštěl, musím mít zaplý apache? v čem budu upravovat kody?

mám vůbec šanci začít pracovat s nette, pokud nemám žádné základy?

nenaběhne znamená (Pokus o připojení prohlížeče Google Chrome k serveru localhost byl zamítnut. Webové stránky možná nejsou v provozu nebo není správně nakonfigurována síť.)

Editoval Burrn.P (6. 10. 2014 19:20)

David Matějka
Moderator | 6445
+
+9
-

mám vůbec šanci začít pracovat s nette, pokud nemám žádné základy?

ne

zacni na zacatku, treba tady:
http://www.pehapko.cz/

Lkopo
Člen | 65
+
0
-

Odporúčam s frameworkom začať až keď budeš vedieť urobiť webovú aplikáciu (stačí jednoduchý blog) bez neho, aby si si uvedomil, na čo ten framework vôbec je. Takisto znalosť OOP je potrebná.

Burrn.P
Člen | 28
+
0
-

Budu zpět po nastudování pehapka.cz, zatím se mějte a všem díky

kloban
Člen | 123
+
-28
-

Ještě bych podotkl, že v začátcích bych se vůbec nezabýval apachem a vyvíjel bych na nějakém free hostingu typu wz.cz nebo ic.cz. Apache pro spuštění php scriptů samozřejmě musí běžet, ale pokud budete začínat na free hostingu tak to nemusíte vůbec řešit a můžete se plně soustředit na php.

Editoval kloban (6. 10. 2014 21:14)

japlavaren
Člen | 404
+
+11
-

kloban napsal(a):

Ještě bych podotkl, že v začátcích bych se vůbec nezabýval apachem a vyvíjel bych na nějakém free hostingu typu wz.cz nebo ic.cz. Apache pro spuštění php scriptů samozřejmě musí běžet, ale pokud budete začínat na free hostingu tak to nemusíte vůbec řešit a můžete se plně soustředit na php.

ja by som na zaciatok doporucil urcite NEpouzivat hosing… prave tym, ze to tam musi nejak nahrat, zabije kopec casu… moj nazor

Mysteria
Člen | 797
+
+13
-

@kloban: Vyvíjet na hostingu? To bude určitě lahůdka. Btw když už doporučuješ free, tak minimálně Endoru, tebou zmíněné jsou shity, co mají ještě snad PHP 5.2 co jsem někdy před půlrokem na ně koukal.

Lkopo
Člen | 65
+
0
-

No ja som na hostingoch začínal :D, je pravda, že to nahrávanie na FTP trvá, ale časom sa to dá zvyknúť (teraz už mám na to VM – Ubuntu), ale čím skôr s vlastným localhostom začneš, tým menej starostí v budúcnosti budeš mať.

Editoval Lkopo (6. 10. 2014 22:03)

Mysteria
Člen | 797
+
0
-

A to jako upravíš 2 – 3 věci, pak to uploadneš a podíváš se na výsledek, jestli je to OK a pak jedeš znova? To musí být docela nic moc produktivita – odhlédněme od toho, že pokročilejší editory umí otevřít soubor z FTP a při CTRL + S ho uploadovat, ale tam tuším zase nefunguje správně napovídání, protože se neotvírá projekt, ale jenom „čistej“ soubor.

Jinak na instalaci webserveru doporučuju tohle: http://programujte.com/…a-windows-8/
Mnohem lepší jak balíčky, které jsou o X verzí všeho pozadu.

Dragonaut
Člen | 33
+
0
-

Nastavení vývojového prostředí není snadné, ale pro pořádnou práci potřebné.
Jsou asi 3 možnosti, které lze zvolit.

  • Instalační balíčky all in one, které nainstalují PHP, MySQL, případně PhpMyAdmin a další
  • Použít hosting, kde je vše již nastavené, web je přístupný z internetu, ale je potřeba tam každou změnu nahrávat
  • Nakonfigurovat si vše sám, dle svých potřeb

Popíšu třetí možnost jak to dělám já.
Stáhneš si

vcredist_x86.exe (knihovny pro Apache instalačku)
Apache2.2 (je již novější verze 2.4, ale tam je problém s PHP verzí pro windows)
PHP 5.4 (je to „Thread Safe“, tj. verze určená pro Apache a architektura x86 musí být stejná jako Apache instalačka, můžeš asi stáhnout i novější verzi PHP, která ale musí obsahovat knihovnu php5apache2_2.dll)
MySQL installer Databáze a nástroj pro ovládání.

Apache nainstaluj například do složky C:\web\prog\, do této složky pak rozbal i php takže budeš mít strukturu třeba
C:\web\prog\Apache-2.2
C:\web\prog\PHP-5.4

dále si vytvoř složku C:\web\www, což bude adresář pro tvé webové projekty.

Nastavení apache
otevři

C:\web\prog\Apache-2.2\conf\httpd.conf

a přidej následující kód (tím složku www zpřístupníš webovému serveru)

<Directory "c:/web/www">
	Options Indexes FollowSymLinks
	AllowOverride None
	Order allow,deny
	Allow from all
</Directory>

pak odkomentuj řádku (která ti umožní poskytovat více webových stránek na jednom počítači)

Include conf/extra/httpd-vhosts.conf

Vstup do souboru C:\web\prog\Apache-2.2\conf\extra\httpd-vhosts.conf
a přidej například

<VirtualHost *:80>
    ServerAdmin webmaster@mujweb.local
    DocumentRoot "C:/web/www/mujweb.local/www"
    ServerName mujweb.local
    ServerAlias www.mujweb.local
    ErrorLog "logs/mujweb.local-error.log"
    CustomLog "logs/mujweb.local-access.log" common
</VirtualHost>

Nastavení podpory PHP v Apache
v C:\web\prog\Apache-2.2\conf\httpd.conf uprav directivu (tím se nastavuje, jaké soubory bude webový server spouštět jako první)
DirectoryIndex na

DirectoryIndex index.html index.html.var index.php

přidáme podporu pro php příponu

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

cestu k php modulu

LoadModule php5_module "c:\web\prog\php\php5apache2_2.dll"

odkomentuj (aby ti fungovalo Nette routování)

LoadModule rewrite_module modules/mod_rewrite.so

ještě je potřeba přidat cestu k PHP.ini souboru

PHPIniDir "c:\\web\\prog\\php-5.4\\"

Nastavení PHP
přepiš soubor (v rozbaleném php zipu) php.ini-development na php.ini

v php.ini pak nastav directivu extension_dir na absolutní cestu do adresáře ext

extension_dir = "C:\\web\\prog\\php5.4\\ext"

odkomentuj (aby ti fungovalo připojení do MySQL z Nette)

extension=php_pdo_mysql.dll

a klidně i další jako (záleží co budeš potřebovat atd.. odkomentováním nic nezkazíš.)
extension=php_bz2.dll
extension=php_curl.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_sockets.dll

Nahrání a spuštění webové stránky
vše ulož a pomocí programu services.msc (spustíš přes win+R) zrestartuj službu Apache.
Pokud se nepovede restart tak je buď někde chyba nebo ti běží jiná služba na portu 80, například to snad dělal Skype.

Do složky C:/web/www/mujweb.local/ teď můžeš nahrát Nette Sandbox

Aby ti ale stránka fungovala v prohlížeči, musíš si upravit soubor

%WinDir%\System32\Drivers\Etc\hosts

ten musíš otevřít jako Administrátor (jinak ti nepůjde uložit), ten má na starosti překlad IP adres na doménová jména a opačně.
přidej do něho řádku

127.0.0.1 mujweb.local www.mujweb.local

Instalace MySQL už je intuitivní a jak propojit nette s mysql najdeš v návodech tady.

Jen než nahraješ Nette tak si zkus nahrát soubor index.php s obsahem <?php phpinfo() ?> abys věděl jestli ti php funguje.
a do prohlížeče vlož normálně www.mujweb.local

Editoval Dragonaut (7. 10. 2014 12:51)

David Kudera
Člen | 455
+
+5
-

Tak trochu OT to @Dragonaut ..

nevím, jak se instaluje takhle jednotlivě php se vším na windows (jedu na linuxu s nginx, kde udělám párkrát apt-get, určitě mnohem míň konfigurace a jedu), ale kdybych jako úplný začátečník viděl tento postup (je jedno v jakém systému), tak mě to osobně spíš docela slušně odradí..

I když nepochybuji o tom, že nastavit si to takhle sám může být lepší (u sebe to taky tak dělám).

Jen pro začátek prostě.. Nebude lepší ten wamp nebo xampp třeba? Opravdu nevím, jak na tom tyhle balíky jsou, takže jen takový návrh ;-)

Dragonaut
Člen | 33
+
0
-

David Kudera: no, možná máš pravdu, pro první rozběhnutí asi jo, ale pak stejně člověk narazí na různé věci, které bude chtít nastavit a stejně do konfiguračních souborů bude muset šáhnout, takhle to má hezky nastavené již od začátku.

Editoval Dragonaut (7. 10. 2014 13:17)

mpis
Člen | 65
+
+2
-

Když to tak čtu, tak mi to nedá a přidám se.
Taky jsem začínal na „soupravě“ z balíčku(Apache, PHP, PostgreSQL). Všechno šlo dobře, ale po čase mně
velmi otravovalo pomalé najíždění aplikace v prohlížeči. Po pročtení mnoha diskusí jsem se na balíček vyignoroval a nainstaloval všechno separátně v posledních verzích.
A to je, pánové, jiná káva.
Takže doporučuji separátní instalaci. Výše uváděný odkaz na návod od Mysteria je dobře zpracovaný a ta chvilka strávená instalací se rozhodně vrátí.
Ještě přidám odkaz na perfektní video, které mi hodně pomohlo při instalaci.

Dragonaut
Člen | 33
+
0
-

A nebo mě napadlo, že pro začátek by možná bylo možné použít i built in server přímo v PHP viz
http://php.net/…ebserver.php

Editoval Dragonaut (7. 10. 2014 13:34)

David Kudera
Člen | 455
+
+1
-

Dragonaut napsal(a):

A nebo mě napadlo, že pro začátek by možná bylo možné použít i built in server přímo v PHP viz
http://php.net/…ebserver.php

V tom ale zase bude řešit ten problém, proč nefunguje htaccess. Osobně to používám jen na selenium testy, kde je do index.php napsaný router pro tenhle php server.

Pořád se ale dost bojím, aby jsme @Burrn.P moc nezahltili informacemi, protože různých možností je hrozně moc :-)

Dragonaut
Člen | 33
+
0
-

jn, snad se s tím nějak popere :-)

Zax
Člen | 370
+
+1
-

IMHO na něj chrlíte trochu moc informací ;-)

Pokud jde o „all-in-one“ řešení pro Windows, pak mohu doporučit http://www.uniformserver.com/, který jsem začal používat poté, co jsem silně narazil u Vagrantu na problém s pomalostí sdílených složek (u Uniform Serveru jsem žádné problémy s rychlostí nezaznamenal).

Mezi hlavní výhody bych zmínil zejména:

  • přenositelnost (nic se neinstaluje)
  • možnost přepínání verzí PHP
  • jednoduchost používání (např. konfigurační soubory nemusím nikde lovit v adresářích, najdu si je v nabídce, dost věcí jde jednoduše „naklikat“)
Azathoth
Člen | 495
+
+1
-

Já používám wamp a pro začátek rozhodně doporučuji, je to skvělá věc, protože se nemusím starat o moc věcí a jede to takřka samo. Akorát to chce na začátku zapnout pár extendions, ale jinak paráda.

Šaman
Člen | 2666
+
+2
-

Používám XAMPP bez jakékoliv dalšího nstavování a na Win7 bez problémů. Jen, pokud používáte i Skype, se doporučuje nastavit, aby se Apache spouštěl jako služba na pozadí, jinak se mohou hádat porty. Jde to naklikat přímo z UI.

Aurielle
Člen | 1281
+
0
-

@Šaman jen doplním, že od doby, co nechávám instalovat Apache a MySQL jako služby, jsem nikdy problém s porty u Skypu neměl. Nebo to už opravuju nevědomě :)

Lkopo
Člen | 65
+
0
-

Ja si radšej dávam všetko na Linux, resp. Ubuntu, tam je to fakt jeden príkaz a o všetko sa systém postará, na Wine trebalo dodatočne sťahovať ešte nejake dll knižnice pre ďalšie doplnky a niekedy je aj umenie nájsť to funkčné dllčko. Moja skúsenosť s Winom je viac problémov ako úžitku a to čo funguje na Wine nemusí na Linuxe.

Bežná chyba je v tom, že Win nie je case-sensitive a UNIX je, takže keď nahrávajú také veci na server, dostávajú not found errory a potom sa čudujú prečo. To isté aj v namespaces.

Editoval Lkopo (7. 10. 2014 22:33)

Azathoth
Člen | 495
+
0
-

Já mám windows a s case sensitivitou nemám žádný problém. A navíc, pokud někdo nemá linux, tak může být instalace poměrně na dlouho.

mpis
Člen | 65
+
0
-

Azathoth:

To, že nemáš problém, vůbec neznamená, že ten problém neexistuje.
Lkopo to napsal přesně.
V případě, že vyvíjíš na oknech a pak to dáváš na produkci(Linux,Unix), se problémům s casesensitive nevyhneš.

Azathoth
Člen | 495
+
0
-

To je pravda, ale vzhledem k tomu, kolik jsem už napsal řádků, tak předpokládám, že pro úplného začátečníka bude jednodušší wamp než instalovat linux. Pokud tedy linux už nemá.

Editoval Azathoth (8. 10. 2014 0:19)

Mysteria
Člen | 797
+
0
-

@mpis: Problém bude existovat jenom u toho, kdo bude programovat stylem „Na velikost písmen kašlu, vždyť to funguje i tak, tak proč stisknout ten SHIFT…“ ostatní se.

Zax
Člen | 370
+
0
-

Ono nejde jenom o case sensitivitu, těch rozdílů tam je víc, například normální lomítka vs zpětná (konstanta DIRECTORY_SEPARATOR) nebo třeba parametr %e u funkce strftime, který nefunguje ve Windows. Ale když člověk ví a dává si na to pozor, tak obvykle nenarazí na problém. Je ale dobrý pro sichr před nasazením aplikaci otestovat v Linuxu.

David Grudl
Nette Core | 8235
+
+3
-

O lomítka nikdy nejde ;-)

Zax
Člen | 370
+
+1
-

Mě štvou lomítka v testech.

iguana007
Člen | 970
+
+2
-

Já bych začátečníkovi nikdy žádný WAMP, XAMPP apod. nedoporučil – podle mě není lepší cesta, než si to hezky nainstalovat a nakonfigurovat ručně, třeba podle návodu, co tady již zmínil @Mysteria (http://programujte.com/…a-windows-8/) – návod je popsaný hodně dobře a laikovi určitě trošku osvětí pozadí toho, jak to asi celé funguje – tj. že máme nějaké configy pro webserver, pak pro databázi atd. Kdežto když se instaluje třeba XAMPP, tak člověk může nasypat zrní kolem Enteru a nainstaluje to i slepice – fungovat to bude, ale jak, to už vědět nebude ani on a ani ta slepice, co to instalovala…

n.u.r.v.
Člen | 485
+
0
-

iguana007 napsal(a):

Já bych začátečníkovi nikdy žádný WAMP, XAMPP apod. nedoporučil – podle mě není lepší cesta, než si to hezky nainstalovat a nakonfigurovat ručně, třeba podle návodu, co tady již zmínil @Mysteria (http://programujte.com/…a-windows-8/) – návod je popsaný hodně dobře a laikovi určitě trošku osvětí pozadí toho, jak to asi celé funguje – tj. že máme nějaké configy pro webserver, pak pro databázi atd. Kdežto když se instaluje třeba XAMPP, tak člověk může nasypat zrní kolem Enteru a nainstaluje to i slepice – fungovat to bude, ale jak, to už vědět nebude ani on a ani ta slepice, co to instalovala…

Souhlasím – přesně tento postup jsem jako začátečník v instalaci apache nedávno dělal a jednodušeji to snad ani popsat nejde… Před tím jsem používal vertrigo serv, ale bohužel má jen php 5.3. Jako další změnu jsem si všiml, že teď mi nette ukazuje 7–8MB využití paměti – předtím to bylo k 15MB…

lihmad
Člen | 1
+
0
-

Zdravím také nějak tak začínám nainstaloval jsem si podle návodu Apache, PHP, MySQL vytvořil si sandbox pustil jsem se do ukázkové úlohy pustil jsem adminera přihlásil se do DB a píše mi to „Není dostupné žádné z podporovaných PHP rozšíření (MySQLi, MySQL, PDO_MySQL).“ přitom mám všechny řádky v php.ini odkomentované. Nevíte kde by mohl být problém? Děkuji.

echo
Člen | 134
+
+1
-

Zkus restartovat apache.

Burrn.P
Člen | 28
+
0
-

Všem díky za další rady, co se týče linuxu mám nainstalované live cd ubuntu – ale nepoužívám moc, spíše win 7. V tuhle chvíli se stále učím dle péhápka.cz (mám nainstalován NetBeans a VertigoServ), myslím že zhruba v příštím týdnu bude hotovo a budu se chtít pustit do nette. Jen si furt nejsem jistej prvotní instalací přes composer a jak to bude vypadat, co se změní pro mě atd. Máte někdo odkaz na video ohledně prvotní instalace composeru + nette + první programování přes něj?

David Grudl
Nette Core | 8235
+
0
-

Tohle je forum tykajici se Nette, neřeš tu prosím nesouvisejíci témata.

Burrn.P
Člen | 28
+
0
-

David Grudl napsal(a):

Tohle je forum tykajici se Nette, neřeš tu prosím nesouvisejíci témata.

Sorry, smazáno

Azathoth
Člen | 495
+
0
-

@Burrn.P zkus sám trochu hledat a googlit.
Nainstalování composeru: https://www.youtube.com/watch?…
a když už máš nainstalovaný composer, tak podle https://doc.nette.org/cs/quickstart zvládneš rozchodit sandbox i bez videa. A pokud ne, tak se ozvi, co ti nejde.

Burrn.P
Člen | 28
+
0
-

Zkoušel jsem instalovat jednotlivě podle rady Dragonaut, ale po dokončení a finálním restartu apache mi to píše chybu. The request operation has failed. – Zkoušel jsem opětovně vše smazat a znova – stále stejný. Pak jsem to zkoušel podle nějakýho videa nastavit a zase. The request operation has failed. – Víte někdo co s tím? Díky

David Matějka
Moderator | 6445
+
0
-

@Burrn.P zkus, jestli to nesouvisi s https://forum.nette.org/…ows-riesenie

Burrn.P
Člen | 28
+
0
-

matej21 napsal(a):

@Burrn.P zkus, jestli to nesouvisi s https://forum.nette.org/…ows-riesenie

zkusil sem, ale pořád nic

Burrn.P
Člen | 28
+
0
-

Nevíte náhodou někdo když při nastovavání composeru píšete příkaz touch do konzole, proč to píše: „není názvem vnitřního ani vnějšího příkazu“? Díky

Azathoth
Člen | 495
+
0
-

asi jsi nepřidal composer do path variable…

Burrn.P
Člen | 28
+
0
-

Do Path ve vlastnostech pc jsem napsal cestu a stále nic