Autor | Zpráva | ||
---|---|---|---|
crooner Profil * |
#1 · Zasláno: 10. 2. 2009, 17:27:10
Dobrý den, začínám s php. Projíždím si kódy a zjištuji co dělají. Ale tomuhle vůbec nerozumím mohl by mi to prosím někdo vysvětlit? co znamená když je tam jedna tečka nebo dvě atd...
if($file!="."&&$file!=".."&&!is_dir($file)&&$file!=$nahled) //preohledáme složku... zde je definice $file while (false!==($file = readdir($vypis))) //načtou se soubory proměnná $vypis otevírá složku děkuji předem za ochotu |
||
Taps Profil |
#2 · Zasláno: 10. 2. 2009, 17:34:44 · Upravil/a: Taps
crooner
tečky symbolizují úrovně dalších složek |
||
reduxcz Profil * |
#3 · Zasláno: 10. 2. 2009, 18:16:02
jedna tecka . - aktualni adresar
dve tecky .. -predchozi adresar v stromove strukture Mimochodem promenna $vypis otevira slozku..? Kdes na takovou blbost dosel? Promenna $vypis pouze obsahuje nazev slozky. Tu slozku otevira/cte funkce readdir() kde $vypis je pouze skutecny parametr/hodnota teto funkce. |
||
AM_ Profil |
#4 · Zasláno: 10. 2. 2009, 18:44:02
Dám ti jednu radu, programování je sice možné se naučit čtením kódů, ale potrvá to dlouho a spoustu věcí se naučíš špatně, buď je jinak pochopíš, nebo je špatně dělal už ten, co ten kód psal. Přečti si nejdříve nějaký online seriál o PHP nebo si kup knížku, pokud to s programováním myslíš vážně.
|
||
crooner Profil * |
#5 · Zasláno: 10. 2. 2009, 19:45:46
seriály jsem četl, teď se snažím vyčíst to co potřebuji, pro tvorbu obsáhlejší galerie.
na tu blbost jsem přišel zde: $vypis = opendir($slozka); //otevře složku |
||
bohyn Profil |
#6 · Zasláno: 10. 2. 2009, 20:30:31 · Upravil/a: bohyn
crooner
Ano toto otevre slozku: $vypis = opendir($slozka); //otevře složku $vypis pak obsahuje identifikator (handle) otvreneho adresare readdir($vypis) |
||
crooner Profil * |
#7 · Zasláno: 10. 2. 2009, 21:26:07
Děkuji za rady, ale nemohli by jste mi prosím ještě jednou napsat co dělá tento řádek?
if($file!="."&&$file!=".."&&!is_dir($file)&&$file!=$nahled) //preohledáme složku... myslím slovy vysvětlit vůbec tam nechápu ty negace |
||
AM_ Profil |
#8 · Zasláno: 10. 2. 2009, 21:29:35
ověřuje, jestli je file adresář (!is_dir($file)), jestli neoznačuje aktuální adresář nebo adresář o úroveň výš, kde uživatel nemá co dělat (file != (.).), a $file != $nahled nevím co kontroluje, evidentně něco jako jestli zvolený adresář není adresář s náhledy.
|
||
crooner Profil * |
#9 · Zasláno: 10. 2. 2009, 21:48:12
Bože:), ta syntaxe je hroznej guláš, uvozovky sem uvozovky tam, ale kdy kde co použít, nevim. Pak bych měl ještě jeden dotaz ohledně tohoto řádku
if (file_exists($slozka.$nahled.'/'.$file)) , kde pro změnu nevím proč je tam lomítko v uvozovkách a co tam dělá proměnná file zde je celý zdroják: http://firstpage.profitux.cz/?page=galerry |
||
AM_ Profil |
#10 · Zasláno: 10. 2. 2009, 22:15:22
ověřuje, zda v nějaké složce $slozka podsložce $nahled existuje soubor $file, přičemž '/' je oddělovač adresářů/souborů, v uvozovkách je proto, že je to řetězcová konstanta.
|
||
crooner Profil * |
#11 · Zasláno: 11. 2. 2009, 13:48:42
jsem v tom uplne vedle:(, jak prosim Vás udělam, abych měl např jen tři náhledy v řádku? v tomto kódu...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title></title> <style> .zobraz { visibility: hidden; position: absolute; z-index: 2; background-color: #dcdcdc; padding: 4px; border: 1px solid; } </style> </head> <body> <h2>Výpis souboru z adresáre</h2> <? $slozka = "./obrazky/"; //zvolíme složku ze které chceme vypsat soubory $nahled = "nahledy"; //název složky pro miniatury $vypis = opendir($slozka); //otevre složku $celkem = '0'; //zacátek poctu fotek while (false!==($file = readdir($vypis))) //nactou se soubory { if($file!="."&&$file!=".."&&!is_dir($file)&&$file!=$nahled) //preohledáme složku... { $celkem++; //...sectem pocet fotek... if (file_exists($slozka.$nahled.'/'.$file)) { //pokud existuje náhled tak ho zobrazíme... echo "<a href=\"#\" onmouseover=\"document.getElementById('".$file."').style.visibility='visible'\" onmouseout=\"document.getElementById('".$file."').style.visibility='hidden'\"><img src=\"obrazky/nahledy/".$file."\" alt=\"".$file."\"></a><div class=\"zobraz\" id=\"".$file."\"><img src=\"obrazky/".$file."\" alt=\"".$file."\" /></div>\n"; }//pokud neexistuje tak ho vytvoríme... else echo "<a href=\"#\" onmouseover=\"document.getElementById('".$file."').style.visibility='visible'\" onmouseout=\"document.getElementById('".$file."').style.visibility='hidden'\"><img src=\"thumb.php?nazev=".$file."\" alt=\"".$file."\"></a><div class=\"zobraz\" id=\"".$file."\"><img src=\"obrazky/".$file."\" alt=\"".$file."\" /></div>\n"; } } echo '<br>Celkem fotek v galerii: '.$celkem; // vypíšeme pocet fotek v halerii... closedir($vypis); //zavreme složku ?> </body> </html> |
||
crooner Profil * |
#12 · Zasláno: 11. 2. 2009, 16:55:56
už jsem na to přišel:)
|
||
reduxcz Profil * |
#13 · Zasláno: 11. 2. 2009, 17:11:37
kod davej do pre a /pre tagu...takto to nikdo cist nebude
|
||
crooner Profil * |
#14 · Zasláno: 11. 2. 2009, 17:24:48
trošku jsem s tim pohnul a mam tu hned jiny problem, potřebuji aby se mi všechny fotografie v galerii otevírali lightboxem, u html souboru neni problem, ale zde u php mi to nefunguje:(
v hlavičce link na lightbox mám. toto mi zobrazuje nahledy echo "<a href=\"".$slozka.$file."\" rel=\"lightbox\" title=\"\"><img src=\"obrazky/nahledy/".$file."\" alt=\"".$file."\"></a><div class=\"zobraz\" id=\"".$file."\"><img src=\"obrazky/".$file."\" alt=\"".$file."\" /></div>"; |
||
reduxcz Profil * |
#15 · Zasláno: 11. 2. 2009, 20:03:02
musis tam naincludovat ten js script na lightbox ne? I css styl jestli u toho je... Je to v hlavicce (x)html
|
||
crooner Profil * |
#16 · Zasláno: 11. 2. 2009, 21:04:35
prosim vás, nemáte někdo tušení proč mi galerie nezobrazuje obrázky větší 2MB?
|
||
crooner Profil * |
#17 · Zasláno: 12. 2. 2009, 09:53:48
tak jsem někde našel, že je to podle hostingu. samozřejmě mám hned jiný problém:). nikde nemohu najít jak v galerii udělat aby se zobrazovalo např. jen 5 fotek a dalších 5 bylo na další straně a dalších 5 na další...
nemáte s tím někdo zkušenost? mám staženou jednu galerii, která to umožňuje, jenže je na tolik obsáhlá, že nemam šanci to z ní vyčíst. |
||
Časová prodleva: 15 let
|
0