Autor | Zpráva | ||
---|---|---|---|
esemeska Profil |
#1 · Zasláno: 1. 6. 2006, 14:53:20
Ahoj!
Muj apache mi hlasi: Notice: Undefined index: heslo in i:\r-bravo\html\html\php\easyphp1-8\www\oa\index.php on line 6 a radek 6 je: if(!isset($_GET["jmeno"])) $_GET["jmeno"]="host"; pak to pouzivam zde: if($_GET["jmeno"] == "host" && $_GET["heslo"] == "host") ...jak mam teda tu promennou jinak definovat? |
||
Hugo Profil |
#2 · Zasláno: 1. 6. 2006, 15:00:52
esemeska
Rve kvuli prvku $_GET['heslo'] a ten jeho existenci neoverujes. Takze se to da resit takto: if(!isset($_GET["heslo"])) $_GET["heslo"]="hesloProHosta"; |
||
finc Profil |
#3 · Zasláno: 1. 6. 2006, 15:31:02
Mrkněte se do php.ini, kde se nastavují zobrazování chybových hlášení. Ne úplně všechno musíte mít zobrazené.
|
||
Hugo Profil |
#4 · Zasláno: 1. 6. 2006, 15:53:43
finc
Pro odladovani je lepsi mit zaple zobrazovani vsech chyb, vc. NOTICE. Da to trochu vic prace, ale iho se to vyplati. |
||
finc Profil |
#5 · Zasláno: 1. 6. 2006, 16:22:54
to Hugo: Spíše než používat zobrazení všech chyb doporučuji používat schopný editor, který základní chyby odhalí sám.
Např. phpeclipse dokáže kontrolovat tyto chyby při psaní. Nemusím poté zkoušet F5 v prohlížeči, jestli je vše OK. |
||
Hugo Profil |
#6 · Zasláno: 1. 6. 2006, 16:28:02
PHPEclipse neznam, ale radsi se spoleham na sebe, nez na nejake funkce editoru, ktere nikdy nefunguji na 100 %. Zvlast pokud jde o bezpecnost aplikace.
|
||
finc Profil |
#7 · Zasláno: 1. 6. 2006, 16:31:37
Tak to nevím. Bezpečnost aplikace nelze zajistit výpisem chybových hlášení. Je to spíše o testování a praxi. Navíc se v phpeclipse dá použít debugger.
Nechápu, co myslíte tím, že nefungují na 100%. |
||
Hugo Profil |
#8 · Zasláno: 1. 6. 2006, 16:35:35 · Upravil/a: Hugo
finc
Pokud nedostanes upozorneni, ze pouzivas napr. neinicializovane promenne, tak muzes prehlednout potencionalni bezpecnosti diru, proto mam na pracovnim compu zobrazovani hlasek naplno a na serveru to ukladam do logu. Nevim jak ten editor upozornuje na chyby, ale pochybuju, ze dokaze najit jakoukoliv chybu. Pokud hlasi jen syntakticke chyby, tak je to uzitecne, ale rozhodne to nestaci pro dobre odladeni aplikace. |
||
finc Profil |
#9 · Zasláno: 1. 6. 2006, 16:49:39
to: Hugo
neinicializovane promenne to samozřejmě odhaluje také ;) Najde stejné chyby jako při zapnutí vypisování všech chyb a upozornění v php.ini. Ono možná by bylo lepší specifikovat, to, že pokud to nepíšete objektově, tak to samozřejmě vše neodhalí. Při dodržování pravidel pro OOP se mi nestane, aby se mi objevila nedefinovaná promenná. Je škoda, že PHP nemá typovou kontrolu jako např. Java, ale vše se dá s trochou snahy ošetřit. Osobně se nespoléhám na výpis hlášení typu "Undefined index". Raději svůj kod budu koncipovat tak, aby k tomuto nemohlo dojít :) Navíc to k odladění vůbec nepomůže. Představte si 10MB projekt v PHP. Logické chyby nemůžu vázat na výpis zapnutého hlášení chyb v php. |
||
Hugo Profil |
#10 · Zasláno: 1. 6. 2006, 16:53:00 · Upravil/a: Hugo
finc
OOP se da pouzivat az od php5, v php4 a nize je jen parodie na OOP. Samozrejme u vetsich projektu uz je potreba provadet kontrolu jinak. Ono taky pouzit php na 10MB projekt je sebevrazda (pokud netvori 8MB komentare). Smaozrejme je vhodne psat tak, aby tyto chyby nemohli nastat, ale na tomto foru se pohybuje hodne zacatecniku, proto je lepsi jim doporucit zapnout pro ladeni zobrazovani vsech chyb. |
||
rabbit Profil |
#11 · Zasláno: 1. 6. 2006, 17:32:07
IMHO OOP se samozřejmě dá používat i v php4. Pokud bychom srovnávali možnosti/vlastnosti OOP v Javě a v php, tak se najdou lidé, kteří budou mluvit o parodii na OOP i u php5.
S phpeclipse zkušenost nemám, ale v Zendu je debugger celkem dobrým pomocníkem. To však nebrání tomu, abych na vývojovém serveru měl nastaveno error_reporting(E_ALL). Dobrou vizitkou (profi) programátora je, že v normálním provozu/stavu aplikace nehází ani warningy. |
||
finc Profil |
#12 · Zasláno: 1. 6. 2006, 19:04:45
Je pravda, že PHP není na velké projekty stavěno, ale než budu schopen své znalosti, které nyní mám v PHP stejně dobře aplikovat v Javě, tak to ještě chvíli potrvá :)
PHP 5 je na OOP vcelku už použitelné, i když, když vidím ten rozdíl oproti Javě, tak musím uznat, že je to nebe a dudy. Ale i tak, prozatím se s PHP dá vyžít, i když přechod na vyšší prog. jazyk je zde vcelku jasný. Jinak s těmi warningy, se asi neshodneme, i když je mám zaplé taktéž, za poslední půl roku se mi nestalo, že by mi vyhodili nějakou hlášku, takže k čemu to? :) Ale cose týče začátečníků, v tom máte nejspíše pravdu. |
||
Časová prodleva: 3 dny
|
|||
esemeska Profil |
#13 · Zasláno: 4. 6. 2006, 11:33:00
kdo psal, ze to tu mate rozebirat:)
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0