Hirdetés
- Milyen házat vegyek?
- Elkészült az SMIC 5 nm-es node-ja, de a kínaiaknak haszna nincs rajta
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Projektor topic
- Pánik a memóriapiacon
- Milyen TV-t vegyek?
- Milyen videókártyát?
- Tudjuk, de nem tesszük: a magyarok többsége nem törődik adatai védelmével
- AMD Navi Radeon™ RX 9xxx sorozat
- Apple MacBook
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Na pont ez egy tökéletes példa arra, hogy miért is egy rakás szar még mindig a w3schools, ahhoz képest, hogy sokan azt hiszik, ez a webfejlesztők referenciáinak alfája és omegája, miközben tele van okádmány példakódokkal, rossz praktikákkal.
Egy külön szekciót szentel annak, hogy elmagyarázza, miért csinálja ezt:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
ahelyett, befejezné a szerencsétlenkedését, és ennyit írna:
<form method="post" action="">
üresen hagyva az action-attribútum értékét, ha már önmagára akarja irányítani a formot... Kész, probléma megoldva...
De még véletlenül sem hívja fel a figyelmet, hogy amúgy nem igazán üdvös megoldás nem szétválasztani a megjelenítéshez tartozó kódot a kapott adatok feldolgozásához tartozó kódtól...
Az input fieldeknél meg még véletlenül se használna labelt az accessibility és könnyebb kezelhetőség jegyében (pl. labelre kattintva ugorjon bele a mezőbe, ezt a böngészők támogatják, ha a label tartalmazza az általa felcímkézett elemet, vagy össze van kapcsolva egy for attribútum segítségével), nem használ placeholdert, mert ugyan miért is lenne HTML5, töketlenkedik azzal, hogy egyesével adogatja át a $_POST tömbben szereplő változókat az indexszel azonos nevű változóknak validálás után, ahelyett, hogy jóval általánosabb és szebb módon oldaná meg, és így tovább... nem értem, miért nem tudják az embereket spagettikód írása helyett végre valami jóra is tanítani.
Szóval látom, a w3fools.com-nak sajnos még mindig van relevanciája."Itt találtam egy pár funkciót ami a hibakijelzésekre vonatkozik, igazából vakvilágban tapogatódzom, segítenél, hogy pontosan mely fájlokat kell a php.ini-ben bekapcsolni ahhoz, hogy kijelezze a php-s hibákat is?"
Jó helyen tapogatózol, de itt nem "fájlokat" kapcsolsz be (ezt nem is tudtam értelmezni), hanem opciókat állítgatsz be (a php.ini egy konfigurációs fájl).Hibajelzésekre:
PHP 5.4.0 fölötti változatoknál:
error_reporting=E_ALL
display_errors=On
PHP 5.4.0-nál régebbi esetén:
error_reporting=E_ALL|E_STRICT
display_errors=On"Majd ezt követően a debuggolás történhet pl. etc. Firebuggal, konzolon keresztül? (Perpill ugye ott nem ír ki semmit sem)."
Húha, itt alapvető fogalmi tévedések vannak. A kliensoldalnak semmi köze a szerveroldalhoz, attól még, mert kommunikálnak, azok fejlesztése, debuggolása, lehetőségei is totálisan eltérnek. Bármilyen böngészőbeli webfejlesztő panelen csak akkor látnád ezeket a hibákat, ha JavaScripttel kiíratnád őket explicite valahogy a konzolra (ez már a gányolás kategória).
Ezért kell megtanulni rendesen debuggolni, de ez egyelőre sztem még nehézkes lenne neked, gondolom most kezded tanulni a PHP-t."Tehát pl. hozzak létre egy contatform.php és külön csak abba legyen a kontaktformhoz tartozó php kód?"
Egy olyan fájlról beszélek, aminek elküldöd az űrlap adatait (ezt a fájlnevet az action-attribútumban adod meg), és aminek a megjelenítéshez semmi köze, nincs benne az űrlap kiírásáért felelős kód, stb. Megkapod az adatokat, validálod őket, gondolva az esetleges csúnyabácsikra, kezdesz az adatokkal valamit (jelen esetben küldesz egy mailt), aztán visszairányítod az egészet abba a fájlba (header() segítségével), amiből kiindultál (vagy valahova átirányítod a júzert, ahol jelzed neki, hogy milyen ügyes volt, és sikeresen elküldte a cuccát). Itt a feldolgozó fájlban a különböző, másik oldalon kiírt adatokat el lehet tárolni $_SESSION-változókban, de ha ez egyelőre magas, akkor maradj az eredeti megoldásodnál, amikor önmagára irányítod az űrlap adatait (üres action-attribútummal).
Vagy ha valakinek van türelme elmagyarázni, akkor az remek.
Most látom, így is qrva sokat írtam. 
Új hozzászólás Aktív témák
- Milyen házat vegyek?
- BMW topik
- Elkészült az SMIC 5 nm-es node-ja, de a kínaiaknak haszna nincs rajta
- Gurulunk, WAZE?!
- Futás, futópályák
- EU-s vám vethet véget a nagyi temus vásárlási lázának
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Mikrotik routerek
- Honda topik
- Samsung Galaxy A54 - türelemjáték
- További aktív témák...
- HP OMEN - 16.1" FHD IPS 144HZ / i7-11800H / 16GB / 1Tb PCIe 4.0 / RTX 3060 6Gb
- Dell Precision 3571 4G LTE i7-12700H 32GB 1000GB FHD RTX A1000 4GB 1 év teljeskörű garancia
- Fujitsu LIFEBOOK E449 i3-8130U 12GB 512GB 14" FHD 1 év garancia
- Karácsonyi akció! HP ZBook Firefly 14 i7-1165G7 16GB 1000GB Nvidia Quadro T500 4GB 14" FHD 1 év gar
- ÚJ AKKU! Ár/ÉRTÉK BAJNOK! Dell Latitude 5330 i3-1215U 6mag! 16GB 512GB 13.3" FHD 1 év gar
- Bomba ár! HP Elitebook 8570P - i5-3340M I 8GB I 500GB HDD I DisplayPort I 15,6" HD I Garancia!
- Dell Latitude 5430 14" Touchscreen i5-1235U 16GB 256GB 1 év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
- Keresünk iPhone 14/14 Plus/14 Pro/14 Pro Max
- Új, Aktiválatlan iPhone 17 Pro Max (256 GB) (rendelhető)
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: ATW Internet Kft.
Város: Budapest
De még véletlenül sem hívja fel a figyelmet, hogy amúgy nem igazán üdvös megoldás nem szétválasztani a megjelenítéshez tartozó kódot a kapott adatok feldolgozásához tartozó kódtól...
Most látom, így is qrva sokat írtam. 

