Autor | Zpráva | ||
---|---|---|---|
Yuhů Profil |
#1 · Zasláno: 2. 8. 2005, 23:08:14
Hodně lidí mi říká, abych začal psát o PHP. Tož tak, nemám na to čas. Ale začal jsem psát PHP tahák, protože HTML tahák
www.jakpsatweb.cz/html/html-tahak.html se ukázal jako velmi úspěšná věc. Jenomže to nestíhám a potřeboval bych pomoct. Jestli někdo máte čas a můžete mi udělat pár příkladů popisem, podívejte se na stránku http://www.jakpsatweb.cz/nedokonceno/php-tahak.html a zkuste zpracovat nějakou nedodělanou kapitolku. Kdyby se vám snad někomu chtělo, tak sem napište, na čem děláte, a pak mi to pošlete mailem. U každé kapitolky bude uvedeno, kdo ji zpracoval. Zásady: * stručně * fakt strašně stručně * bez zbytečných keců * v příkladech nesmí být vůbec nic navíc * příklady musejí být co nejjednodušší * nesmějí se vysvětlovat dvě věci najednou * jenom užitečné věci * všechno nové je potřeba vysvětlit Hlavní (a možná jediný) cíl této stránky: aby čtenář rychle našel, na co si v PHP rychle nemůže vzpomenout. |
||
habendorf Profil |
#2 · Zasláno: 3. 8. 2005, 00:30:52 · Upravil/a: habendorf
Sorry za OT:
<? $promenna = "karle"; echo "Ahoj ". $karle; ?> vypíše Ahoj Karle. Tečka spojuje řetězce. Hned 2 chybky - echo "Ahoj ". $promenna; vypíše Ahoj karle (s malým "k") Jinak dobrý podnik, doufám že se někdo chytí, já jsem s php bohužel v plenkách. |
||
Yuhů Profil |
#3 · Zasláno: 3. 8. 2005, 03:20:33
možná je to právě pro ty, kdo jsou s PHP v plenkách
|
||
Časová prodleva: 8 dní
|
|||
HubiPe Profil * |
#4 · Zasláno: 10. 8. 2005, 20:06:42 · Upravil/a: HubiPe
Pro Yuhůa: Můžeš to tam zkopírovat tak jak to je, jenom kdybys mě tam napsal jako autora, nebo tak něco jako hubipe (vše s malym, v tomto systému mi to nejde změnit na malý :-(
poznámka ke komentářům: # funguje úplně stejně jako // WHILE Funkce while() umožňuje cyklické provádění příkazů:
Příkazy se budou provádět tak dlouho, dokud bude výraz TRUE. Můžeme si tedy například vypsat nadpisy od H1 po H6 jednoduchým cyklem:
Jako větvící příkazy (if, elseif, else, ...) můžeme použít složené závorky
nebo dokonce, pokud máme jen jeden příkaz (což u while většinou není, ale může se stát...) nemusíme používat endwhile ani závorky. Nesmíme ale pak použít dvojtečku! while(podmínka) jeden příkaz; DO-WHILE Do while je stejný cyklický příkaz jako while, s tím rozdílem, že podmínka je uvedena až na konci bloku příkazů. Výhoda je, že se blok příkazů provede (alespoň jednou) vždy.
U do-while existuje jen použití se složenými závorkami, žádne enddowhile neexistuje. Pokud si zase chceme vypsat nadpisy od H1 po H6, provedeme to takhle:
INCLUDE Include slouží ke vložení souboru do práv prováděného skriptu. Příkaz include má mnoho "odnoží" a to require a od obou ještě include_once a require_once. Syntaxe:
Je zde ještě možnost zapsat inlude (a další) s kulatýma závorkama:
cesta/k/vkladanemu/souboru může být jak absolutní tak relativní. Hlavní rozdíl mezi include a require je, že když selžou, při použití require se vypíše fatální chyba a skript se ukončí, kdežto při použití include se jen vypíše upozornění a interpret jazyka PHP pokračuje dále ve vykonávání skriptu. Tzn. že pokud jsme na vkládaném souboru závislý, nejlepší je použít require. Rozdíl mezi include a include_once (respektive require a require_once) je, že pokud chceme soubor vložit jen jednou, ačkoliv je uveden například v cyklu použijeme variantu _once (jednou). Když tedy máme ve vloženém souboru deklaraci funkcí, měli bychom použít _once. Vložil-li by se totiž soubor (omylem) vícekrát, vedlo by to k chybě, že funkce jsou již zaregistrovány. ODESÍLÁNÍ MAILŮ K odesílání mailů slouží funkce mail(). Její syntaxe je:
V komu se definuje e-mail příjemce. Je-li příjemců víc, oddělujeme e-mailové adresy čárkamy. Předmět a text je snad každému jasný. Jen si dovolím upozornit, že pokud chceme odřádkování v textu, musíme použít úvozovky a metaznaky \n. V nepoviném parametru hlavičky můžeme nastavit od koho je e-mail, kódování zprávy, prioritu, návratovou cestu pro chyby atp. Hlavičky se oddělují novým řádkem (\n). Odeslání kompletního e-mailu si ukážeme:
Náš skript tedy při každém zavolání odešle e-mail na muj@prijemce.cz. |
||
anonym Profil * |
#5 · Zasláno: 12. 8. 2005, 18:07:41
neodporucam pouzivat <? ?>, radsej <?php ?>.
<? ?> moze admin zakazat a v nesledujucich verziach vraj nebude fungovat |
||
Hanz Profil |
#6 · Zasláno: 12. 8. 2005, 20:01:06
anonym
Jo to je pravda. Já jsem si teď nainstaloval nové PHP a chvilku jsem dumal nad tím proč mi nejedou scripty (defaultně to tam bylo nastaveno na <?php. |
||
Časová prodleva: 3 dny
|
|||
Yuhů Profil |
#7 · Zasláno: 15. 8. 2005, 12:24:40
díky moc, HubiPe, něco z toho použiju.
|
||
Časová prodleva: 6 dní
|
|||
hubipe Profil |
#8 · Zasláno: 21. 8. 2005, 15:44:53
Osobně používám <? ?> a je to v pohodě. Všichni (většina) poskytovatelů webhostingu má povoleno <? ?>. Tudíž se mi to zdá zbytečné. Asi tak zbytečné jako psát <script language="php"></script>(nebo jak to je...) Pokud potřebuju generovat XML pak echo "<?xml ... ". Ale dodržuju jednu věc, co by měl dodržovat každý, a to nepoužívat $REMOTE_ADDR ale používat super globální proměnné ($_SERVER, $_GET, $_POST, $_REQUEST atd.). CHtěl-li by přes všechno používat $REMOTE_ADDR apod., ať si napíše funkci, které ze super globálních polí udělá zkrácené názvy - jako třeba
$REMOTE_ADDR = $_SERVER['REMOTE_ADDR']; Samozřejmě nedefinovat ručně, ale procházet polem a zapisovat do proměnných pomocí chameleóna. |
||
Leo Profil |
#9 · Zasláno: 21. 8. 2005, 15:52:19
"Osobně používám <? ?> a je to v pohodě. Všichni (většina) poskytovatelů webhostingu má povoleno <? ?>. Tudíž se mi to zdá zbytečné."
Osobne si myslim, ze je to neopravnena lenost, nikdy nevite, v jakym prostredi skript pobezi, nehlede na to, ze na webhostingu vam casto zmeni konfiguraci bez varovani. Plati i pro jine veci (magic quotes, register globals, napr.). Leo |
||
Leo Profil |
#10 · Zasláno: 21. 8. 2005, 15:56:09
Prilisna strucnost skodi - include nevklada soubor. Include dela to, ze ukonci php blok, vlozi soubor, a pak zacne php blok. Rozdil poznate, pokud v includovanem souboru bude
echo "neco"; nebo tam bude <?php echo "neco"; ?> Je taky dobry rict, ze vkladany soubor je mozne obecne ziskat primo v prohlizeci, takze treba pripona inc je bez dalsiho zabezpeceni spatna volba, atd. Leo |
||
Yuhů Profil |
#11 · Zasláno: 21. 8. 2005, 20:41:20
Leo, máš pravdu, ale tahák má sloužit nikoli na výuku jazyka, nýbrž na připomenutí toho, co jsem zrovna zapomněl.
|
||
Časová prodleva: 8 dní
|
|||
marek_sk Profil * |
#12 · Zasláno: 29. 8. 2005, 14:25:45
Mohu se připojit?
Původní text: Nezáleží na velikosti písmen (až na výjimky). Návrh: Na velikosti písmen obecně nazáleží, ve jmenech proměnných však ano, ve jménech konstant však zpravidla ano. Původní text: Poznámky Návrh: Komentáře Původní text: Oddělují se sekvencemi /* a */, nebo // až do konce řádku. Nevím, jak funguje mříž #. Návrh: Mezi /* a */ nebo od // až do konce řádku nebo od # až do konce řádku K odstavci: Zpracování parametrů z URL Dotaz: Proč začátečníkům doporučujete změnit nastavení na register_globals = on? Že parametr a z URL dostanou v poli $_GET['a'] imho není nic tak složitého. Návrh, co přidat: Viditelnost proměnných Globální proměnné nejsou přístupné uvnitř funkcí, ale lze to zařídit. a) příkazem global $jmeno_globalni_funkce; v těle funkce, nebo b) přístupem přes asociativní pole $GLOBALS indexované jmény globálních proměnných (bez $) Konstanty define("JMENO_KONSTANTY", "Ahoj svete"); K odstavci: Čtení cookie Návrh alternativy: Hodnota cookie se pro potřeby PHP skriptu automaticky načítá do asociativního pole $_COOKIES, tedy například do $_COOKIES["user"] z předchozího příkladu. K odstavci While: $i = 1; while ( $i < 10) { echo $i; $i++; } Nebo syntake s dvojteckou (Yuhů ji má radši? :-) ) $i = 1; while ( $i < 10): echo "$i"; endwhile; K odstavci For: Někde by tam mohlo být napsáno něco jako for($a=1 /* co se provede pred prvnim pruchodem*/; $a<5 /*co musi platit pred kazdym pruchodem, jinak konec */;$a++ /* co se provede po kazdem pruchodu */) (..) Nebo syntake s dvojteckou (Yuhů ji má radši? :-) ) for($a=1;$a<5;$a++): echo $a; endfor; Pokračování příště (bude-li ovšem zájem) |
||
Časová prodleva: 5 měsíců
|
|||
FL Profil * |
#13 · Zasláno: 30. 1. 2006, 00:08:31
FL: Poslys, toto je nekonecny cyklus:
Nebo syntake s dvojteckou (Yuhů ji má radši? :-) ) $i = 1; while ( $i < 10): echo "$i"; endwhile; FL: Nebot $i se stale rovna 1 :) (nebo tomu tak neni? Ze by "dvojteckaů pricitala +1? PHP se teprve "ucim", ale rekl bych, ze mam pravdu...) |
||
jozob Profil |
#14 · Zasláno: 30. 1. 2006, 00:14:36
Yuhů
Dal som si tú stránku do bookmarku. Keď bude čas, pokúsim sa pomôcť s niečim. |
||
ferda nebo franta Profil * |
#15 · Zasláno: 30. 1. 2006, 00:22:37
jozob: informace, ktera rekl bych vubec nikoho nezajima. pokud cekas dekovani od yuhua, mozna se dockas, lae i tak bych rekl ze vsem i yuhuovi je vcelku sumafuk, ze sis tu stranku dal do bookmarku. dokud nebudou vysledky.
kdyby kazdy psal neco podobneho, tak za chvili by diskuze byla z 50% zahlcena prispevky: pockej, reseni ti nepovim, ale treba si na to nekdy najdu cas. |
||
jozob Profil |
#16 · Zasláno: 30. 1. 2006, 00:33:35 · Upravil/a: jozob
ferda nebo franta
Najskôr skús porozmýšľať, prečo som prispel. Dôvod: chcem, aby som toto téma dostával mailom, aby som vedel šo sa okolo toho ťaháku deje. A navyše zakaždým, keď mi príde mail, vzpomeniem si, že by som s tým mohol pomôcť. Áno, informačná hodnota nulová, ale ako inak si mám zadať posielanie mailov? "pokud cekas dekovani od yuhua, mozna se dockas" Nie nečakám. Obyčajne nečakám poďakovanie za nič. Ty snáď áno? "kdyby kazdy psal neco podobneho, tak za chvili by diskuze byla z 50% zahlcena prispevky ... " Keby každý kritizoval tých 50% príspevkov ako Ty, za chvíľu by tu bolo ďaľších 50% kritika na príspevky. Ale zaujímalo by ma, koľkým ľuďom si tu pomohol? Už dlhšie sledujem, že "nejaký" Anonymní tu rovnakým štýlom kritizuje príspevky. Ale ďakujem, že si si do kolonky meno napísal aspoň niečo. |
||
sms Profil * |
#17 · Zasláno: 30. 1. 2006, 14:54:59
Yuhů možná jsi si toho nevšiml http://diskuse.jakpsatweb.cz/index.php?action=vthread&forum=8&topic=18 845
Ta kalkulacka by mohla byt vazne dobra...neslo by to i v php? |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0