Autor | Zpráva | ||
---|---|---|---|
Alphard Profil |
#1 · Zasláno: 15. 9. 2010, 12:58:33
Již delší dobu slibuji úpravu FAQ. Konečně jsem se k tomu dostal.
Jsou opravené nefunkční odkazy, upravené některé kódy, doplněn nějaký obsah a přidané kotvy na konkrétní problémy. Snažil jsem se dohledat starší návrhy, některé jsem zohlednil, jiné jsem se rozhodl do FAQ zatím nedávat. Pro další návrhy zakládám toto vlákno (podobně jako Diskuse k častým potížím, zajímavostem a poučným debatám, tohle bude ale zvýrazněné a najdete ho vždy nahoře v kategorii PHP). Můžete sem dávat návrhy věci, které by se mohly objevit ve FAQ. Pokuste se ale prosím vyhnout dlouhým debatám. Časem bude stejně nutné tady uklízet, ale ať to není za týden :-). |
||
Časová prodleva: 5 dní
|
|||
__construct Profil |
#2 · Zasláno: 20. 9. 2010, 16:09:32
Páčil sa mi tento Chamurappiho návrh a preto aj keď sú jednotlivé chybové hlášky celkom jednoducho a zrozumiteľne napísané, vysvetlil by som konštrukciu chybovej hlášky PHP parsera a odkázal na zoznam PHP tokenov kde nájdu ku každej „nepochopiteľnej hláške písanej veľými písmenami“ príslušnú PHP syntax a odkaz na miesto v dokumentácii s popisom ako sa čo používa. Tiež by som odporučil používanie nejakého editora ktorý upozorňuje na zlú syntax (napr. Komodo Edit )
|
||
Alphard Profil |
#3 · Zasláno: 20. 9. 2010, 21:06:48
__construct:
„keď sú jednotlivé chybové hlášky celkom jednoducho a zrozumiteľne napísané“ Již delší dobu přemýšlím o něčem podobném, ale byl bych rád, kdyby mi v budoucnu Chamurappi upravil javascriptové kontroly při zakládání vlákna. Mám představu, že jak se objeví např. "supplied argument is not a valid MySQL result", javascript se zeptá, jestli si uživatel vypsal chybu funkcí mysql_error(). Podobně bychom mohli odchytávat i jiné chyby. „odkázal na zoznam PHP tokenov“ Obávám se, že tohle začátečníkům (nikdo jiný se na podobné chyby neptá) moc neřekne. „Tiež by som odporučil používanie nejakého editora ktorý upozorňuje na zlú syntax“ Souhlasím, že to můžeme doporučovat. Ale ve chvíli, kdy někdo řeší problém, asi nebude instalovat nové programy. |
||
Chamurappi Profil |
#4 · Zasláno: 22. 9. 2010, 11:16:23
Reaguji na Alpharda:
„Podobně bychom mohli odchytávat i jiné chyby.“ Ano, kromě integrovaného hledání plánuji do nového vkládacího formuláře i jakýsi automatický odpovídač. Moderátoři nejspíš budou mít možnost doplňovat regulární výrazy a k nim patřičné automatické rady/odpovědi. Pár technických drobností: 1) Všiml jsem si, že má jeden z nadpisů kotvu #lomítka . S diakritikou v kotvách nejspíš nikdo nemá problém, ale ostatní kotvy většinou máme bez diakritiky.
2) Nedoporučuju odkazovat na čísla příspěvků, protože bude-li FAQ bobtnat, může být jednou nutné rozdělit první příspěvek do dvou (jako se stalo u JS FAQ) — kotvy pak nebudou sedět. Koukám, že první příspěvek už u desetikilové hranice je. 3) Kdybys chtěl nějak hnout s datumy, aby mezi nimi nezářily ty časové prodlevy, stačí říct. |
||
Alphard Profil |
#5 · Zasláno: 22. 9. 2010, 11:29:29 · Upravil/a: Alphard
Chamurappi:
„plánuji … i jakýsi automatický odpovídač“ Vynikající, počkám. „že má jeden z nadpisů kotvu #lomítka“ Sjednotil jsem na verzi bez diakritiky. „Koukám, že první příspěvek už u desetikilové hranice je.“ Už ji překročil :-( Některý kolega se moc rozpovídal o hashování + zapomenutém hesle a ztratili jsme návod jak měnit <title> includovaným souborem. Ale mám na druhém počítači zálohu, snad ji najdu. „Kdybys chtěl nějak hnout s datumy, aby mezi nimi nezářily ty časové prodlevy, stačí říct.“ Mně nevadí. Jestli to vadí uživatelům nechám na širší diskusi. „Nedoporučuju odkazovat na čísla příspěvků“ Pozůstatek z doby, kdy nebyly nadpisy. Časem to zmizne. |
||
__construct Profil |
#6 · Zasláno: 22. 9. 2010, 12:57:25
Alphard:
Odporúčam sem doplniť tento odkaz. Ešte mám otázku - akým spôsobom bude FAQ vznikať? Bude sa odkazovať na riešenia z jednotlivých príspevkov, alebo ho budú budovať moderátori/členovia? Pokiaľ by som mohol pomôcť napísať riešenie nejakého problému ozvi sa mi na mail :-) |
||
Majkl578 Profil |
#7 · Zasláno: 22. 9. 2010, 13:27:26
|
||
Alphard Profil |
#8 · Zasláno: 22. 9. 2010, 15:12:11
__construct:
„Odporúčam sem doplniť tento odkaz.“ Nevešlo se, opět se smazal konec. K registraci se to také nevešlo, takže vznikl nový oddíl Nejčastější potíže s PHP (FAQ) „akým spôsobom bude FAQ vznikať? Bude sa odkazovať na riešenia z jednotlivých príspevkov, alebo ho budú budovať moderátori/členovia?“ Tohle je pracovní vlákno, kde mohou všichni navrhovat změny/nové věci. Konečné změny budou provádět moderátoři. Nechat to vlákno otřevřené nefunguje (zkoušeli jsme), jiná možnost není a asi není třeba ji dělat. Některá řešení kopíruji a upravuji, minimálně aby byl jednotný coding standard. Snažili jsme se s Majklem upravovat i více, ale jsme dost limitováni tím, že to musí být na začátečníkcé úrovni. Jiné věci odkazuji do diskuse i ven. Jestli bude obsah, může vzniknout vlákno "Pokročilé techniky v PHP", nevidím v tom problém. |
||
tiso Profil |
#9 · Zasláno: 22. 9. 2010, 15:39:13
Alphard: Uvovzovky?
|
||
Joker Profil |
#10 · Zasláno: 22. 9. 2010, 15:43:11
Alphard:
„Některý kolega se moc rozpovídal o hashování + zapomenutém hesle a ztratili jsme návod jak měnit <title> includovaným souborem.“ To jsem byl já. Toho jsem si nevšiml, omlouvám se. |
||
Alphard Profil |
#11 · Zasláno: 22. 9. 2010, 16:04:23
[#9] tiso
Přepsal jsem se, mělo to být česky, teď je to správně. Jestli si přeješ, abych to nadepsal slovensky, tak vyhovím, ale prvně to zkusím takhle :-) Joker: „To jsem byl já. Toho jsem si nevšiml, omlouvám se.“ Nevadí. Jen jsem chtěl veřejně zmínit možný problém, aby se nikdo nepoštěl do rozsáhlejší doplňování dlouhých příspěvků. |
||
tiso Profil |
#12 · Zasláno: 22. 9. 2010, 16:13:17
Alphard: na jazyku nezáleží, išlo o to písmenko navyše.
|
||
Časová prodleva: 26 dní
|
|||
__construct Profil |
#13 · Zasláno: 18. 10. 2010, 08:34:53 · Upravil/a: __construct
Navrhujem upraviť
registraci uživatelů tak aby obsahovala použitie „osoleného hashu“
|
||
Alphard Profil |
#14 · Zasláno: 18. 10. 2010, 13:54:15
[#13]
Stačí vám statický salt, nebo chcete dynamický? Osobně si myslím, že to není nezbytné, protože začátečníci využívající tento script stěží dělají něco natolik významného, aby bylo třeba to solit, a je to další komplikace v pochopení celého principu. Raději bych do části o hashování přidal odstavec o solení a propojil křížovým odkazem. |
||
__construct Profil |
#15 · Zasláno: 18. 10. 2010, 14:18:22
Alphard:
„Stačí vám statický salt, nebo chcete dynamický?“ Napadlo ma to keď som videl tento príspevok „Raději bych do části o hashování přidal odstavec o solení a propojil křížovým odkazem.“ Myslím, že to znie rozumne :-) |
||
Časová prodleva: 9 dní
|
|||
Joker Profil |
#16 · Zasláno: 27. 10. 2010, 11:03:42
Přidal jsem na první místo v FAQ bod o „syntax error“. Překvapující, že tam o chybách syntaxe nic nebylo, když to je snad nejčastější typ dotazů v kategorii PHP.
|
||
Časová prodleva: 1 měsíc
|
|||
__construct Profil |
#17 · Zasláno: 29. 11. 2010, 21:42:08 · Upravil/a: __construct
Píšem to sem, lebo som nenašiel podobné vlákno k MySQL.
V MySQL FAQ je v časti o češtine písané : > stačí po každém connectu zavolat: mysql_query("set names utf8"); //(utf8 nahraďte za cp1250 pro stránky ve windows-1250 a latin2 pro iso-8859-2) mysql_set_charset poprípade metóda mysqli::set_charset nie volanie dotazu SET NAMES …
|
||
Alphard Profil |
#18 · Zasláno: 30. 11. 2010, 00:37:26
Přidal jsem odkazy na solený hash.
Do obsahu db FAQ Kajmanovi nezasahuji, jestli si toho tady nevšimne, podstrčíme mu odkaz někam do databází. |
||
__construct Profil |
#19 · Zasláno: 30. 11. 2010, 08:35:37
Alphard:
Práveže toto je záležitosť PHP; z hľadiska MySQL na tom nie je nič zlé. |
||
Kajman_ Profil * |
#20 · Zasláno: 1. 12. 2010, 13:40:17
__construct:
Nastavuje ta funkce i character_set_connection? Nezkomplikuje to text nápovědy, kde se bude stejně muset napsat návod pro starší verze php a tam použít set names? |
||
__construct Profil |
#21 · Zasláno: 1. 12. 2010, 14:20:12 · Upravil/a: __construct
Kajman:
„Nastavuje ta funkce i character_set_connection“ Podľa testu čo som teraz spravil áno: mysql_set_charset('utf8'); echo "<pre>"; $q = mysql_query('SHOW VARIABLES LIKE "%character_set%"')or die(mysql_error()); while ($r = mysql_fetch_assoc($q)){ var_export($r); echo "\n"; } array ( 'Variable_name' => 'character_set_client', 'Value' => 'utf8', ) array ( 'Variable_name' => 'character_set_connection', 'Value' => 'utf8', ) array ( 'Variable_name' => 'character_set_database', 'Value' => 'utf8', ) array ( 'Variable_name' => 'character_set_filesystem', 'Value' => 'binary', ) array ( 'Variable_name' => 'character_set_results', 'Value' => 'utf8', ) array ( 'Variable_name' => 'character_set_server', 'Value' => 'latin1', ) array ( 'Variable_name' => 'character_set_system', 'Value' => 'utf8', ) array ( 'Variable_name' => 'character_sets_dir', 'Value' => 'c:\\wamp\\bin\\mysql\\mysql5.1.36\\share\\charsets\\', ) „Nezkomplikuje to text nápovědy, kde se bude stejně muset napsat návod pro starší verze php a tam použít set names?“ Na php.net je k tej funkcii písané, že tá funkcia je preferovaný spôsob nastavovania znakovej sady. Použitie dotazu SET NAMES … sa nedoporučuje.
Myslím, že keď tam bude poznámka že sa na to používa tá funkcia/metóda a pre staršie verzie MySQL treba zavolať dotaz bude to prehľadné. Ale to je môj názor. |
||
Časová prodleva: 2 měsíce
|
|||
Timy Profil |
#22 · Zasláno: 10. 2. 2011, 16:31:40
Tady je nejspíš překlep:
"From: =?UTF-8?B?".base64_encode(autoUTF("Moje Jméno"))."?=<ja@email.cz> /r/n"; |
||
Alphard Profil |
#23 · Zasláno: 10. 2. 2011, 20:44:57
[#22] Timy
Děkuji, opraveno. |
||
Časová prodleva: 9 dní
|
|||
Kajman_ Profil * |
#24 · Zasláno: 19. 2. 2011, 22:45:54
__construct:
„Pričom v manuále PHP je v poznámkach doporučovaný spôsob nastavovania kódovania pre MySQL 5.0.7 a vyššie funkcia mysql_set_charset poprípade metóda mysqli::set_charset nie volanie dotazu SET NAMES“ Nakonec jsem tam nechal přeci jenom to set names a jen připsal pro pokročilejší uživatele, že je doporučené tuhle to. Oni sem spíše stejně chodí začátečníci a takhle nemusí řešit, kterou verzi toho a toho vlastně používají. |
||
Časová prodleva: 4 měsíce
|
|||
Joker Profil |
#25 · Zasláno: 24. 6. 2011, 09:54:54
Přidal jsem do FAQ položku pro chybu „supplied argument is not a valid (atd.)“
Připomínky vítány. |
||
Alphard Profil |
#26 · Zasláno: 24. 6. 2011, 13:27:01
Joker:
„Připomínky vítány.“ Už delší dobu jsem se chystal trochu rozepsat o chybách. Často se zde objevuje rada "zapni si zobrazení chyb", ale už ne, jak to udělat. FAQ je nekompletní, jen útržkovitě zmiňuje syntaktické chyby, headers already sent, překročení limitu paměti a teď sql chyby. Snad ti nebude vadit, kdybych tvůj příspěvěk někdy v budoucnu přesunul a možná trochu upravil. |
||
Joker Profil |
#27 · Zasláno: 24. 6. 2011, 14:04:36 · Upravil/a: Joker
Alphard:
„FAQ je nekompletní“ To rozhodně, vždyť třeba moje poslední dva příspěvky (tenhle a ještě parse error) vznikly tak, že jsem chtěl někomu omlátit o hlavu odkaz do FAQ a následně s překvapením zjistil, že to tam není :-) „Snad ti nebude vadit, kdybych tvůj příspěvěk někdy v budoucnu přesunul a možná trochu upravil.“ To určitě nebude. Dodatek, akorát myslím, že parse error patří na první místo FAQ (už proto, že to je úplně základní a přitom velice častá chyba). |
||
Časová prodleva: 3 dny
|
|||
__construct Profil |
#28 · Zasláno: 27. 6. 2011, 21:53:47
Mohla by sa do FAQ časti o BOM doplniť informácia o tom, že BOM signatúra sa prejavuje aj „prázdnym miestom“ na stránke a že jej existenciu vie odhaliť Chamurappiho validátor.
|
||
Časová prodleva: 3 měsíce
|
|||
Davex Profil |
#29 · Zasláno: 15. 9. 2011, 23:37:33 · Upravil/a: Davex
V PHP FAQ navrhuji v částech Kódování e-mailu a Odeslání více položek nahradit znaky pro konec řádku
\r\n v odesílané hlavičce za konstantu PHP_EOL .
Již několika lidem to pomohlo a pro konstantu PHP_EOL platí následující:
1) Na Unixu/Linuxu bude mít hodnotu \n , kterou tam bude předpokládat i program sendmail, který funkce mail() použije k odeslání e-mailu dál. (Některé staré/chybné verze mohou při předání e-mailu poštmistrovi/mailserveru hloupě doplňovat znak \r před každé \n , přestože tam už je, a způsobí to rozbití hlavičky.)
2) Na Windows bude mít hodnotu \r\n a funkce mail() zprávu odesílá protokolem SMTP, který tyto znaky jako konec řádku předpokládá.
|
||
Alphard Profil |
#30 · Zasláno: 15. 9. 2011, 23:43:01 · Upravil/a: Alphard
[#29] Davex
Souhlasím, udělám to. Tak jsem to udělal. Nevím, jestli to bylo potřeba u skládání zprávy z více položek, ale škody snad nebudou. |
||
Téma pokračuje na další straně.
|
0