nazwy plików dla JoGadgets Odp:nazwy plików dla

Transkrypt

nazwy plików dla JoGadgets Odp:nazwy plików dla
nazwy plików dla JoGadgets
Autor: petrus_ - 2007/07/04 12:44
_____________________________________
z bólem zauwa¿y³em, ¿e JoGadgets jest wra¿liwe na nazwy plików umieszczone w katalogach do wy¶wietlania np. Image
rotatorem, b±d¼ galeri±
{jgrotator folder:= width:= height:=}{jgxgal folder:= title:= cols:=}
je¶li w katalogu food umieszczê plik o nazwie cos.tam.jpg, to plik ten siê nie poka¿e :S
Powodem jest kropka w nazwie pliku.
Plik o nazwie cos_tam.jpg jest ju¿ dobry dla rotatora.
dajcie znaæ je¶li Wasz JoGadgets dzia³a inaczej, bo mo¿e to znowu ja co¶ mieszam z Joomla 1.1.12
============================================================================
Odp:nazwy plików dla JoGadgets
Autor: Jokris - 2007/07/04 16:24
_____________________________________
B) Cze¶æ.
B) JoGadgets nie dzia³a inaczej ani u mnie, ani u kogokolwiek innego. Po prostu forma nazwy dla pliku z obrazkiem jest
istotna i wa¿na, dla ka¿dej galerii, a nie tylko JoGadgets. Ale w JoGadgets chodzi o co¶ innego. W pliku "jgfw.php" od
linii 263 jest taki kod:
$tfiles = '';
foreach($files as $file){
$tmp = explode('.', $file) ;
$tmp=strtolower($tmp);
if($tmp=='jpg'){
$tfiles .= '<photo path="'.$localpath.$prmlist.'/'.$file.'" link="http://www.jokris.info/" />';
...gdzie oryginalnie warto¶æ "link" jest pusta, czyli:
link=""
...ale tu przy okazji pokaza³em, ¿e mo¿na do galerii dodaæ w³asny "link" prowadz±cy w tym przypadku na moj± stronê
g³ówn±. Mo¿e to byæ link do ka¿dego obrazka, ale bêdzie otwiera³ siê w tym samym oknie, i spowoduje zak³ócenie w
pracy jpgrotatora:
$tfiles = '';
foreach($files as $file){
$tmp = explode('.', $file) ;
$tmp=strtolower($tmp);
if($tmp=='jpg'){
$tfiles .= '<photo path="'.$localpath.$prmlist.'/'.$file.'" link="'.$localpath.$prmlist.'/'.$file.'" />';
B) Wracaj±c do pytania. Masz w kodzie istotn± dla tematu funkcjê explode. Ale zacznijmy od pêtli foreach, która
przeszukuje zawarto¶æ folderu z obrazkami traktuj±c ten folder jako "tablicê". Natomiast funkcja explode "rozbija"
wszystkie znalezione nazwy plików w folderze ( tablicy ) z obrazkami ( zmienna $files ) zawieraj±ce w nazwie "." kropkê i
tworzy now± tablicê z tych nazw. Funkcja strtolower zmienia wszystkie litery w nazwach plików na ma³e. Je¶li pêtla
znajdzie plik w którego nazwie znajduje siê s³owo (rozszerzenie) "jpg" ( no bo to jest jpgrotator ), wstawia ca³± nazwê
pliku do ¶cie¿ki "photo path". Teraz dlaczego nie mo¿e byæ w nazwie pliku dwóch kropek. Poni¿ej masz przyk³ad
praktyczny w postaci kodu:
$file = 'cos.tam.jpg';
foreach($files as $file){
$tmp = explode('.', $file) ;
$tmp=strtolower($tmp);
if($tmp=='jpg'){
....itd
...otrzymasz tablicê tak wygl±daj±c±:
$tmp == 'cos '
$tmp == 'tam '
$tmp == 'jpg'
Forum JOKRIS.INFO - JOKRIS.INFO - Rozszerzenia, dodatki do Joomla! i Mambofireboard Forum Component version: 1.0.0
Generated: 7 March, 2017, 04:18
...wówczas zmienna $tmp nie zawiera w sobie s³owa "jpg" i obrazek nie zostanie wy¶wietlony. Tablica powinna wygl±daæ
tak:
$file = 'cos.jpg';
$tmp == 'cos '
$tmp == 'jpg '
...i zostanie spe³niony warunek if:
if($tmp=='jpg'){
$tfiles .= '<photo path="'.$localpath.$prmlist.'/cos.jpg" link="" />';
...bo $tmp == 'jpg'.
:laugh: Ja my¶lê, ¿e przy twoich zdolno¶ciach na pewno po³apiesz siê, o co chodzi. Po prostu taka jest konstrukcja
kodu dla jpgrotator z JoGadgets, i trzeba trzymaæ siê tego, aby nie dawaæ dwóch kropek w nazwach plików.
:blink: No to chyba wszystko. Pozdrawiam. Jokris.
============================================================================
Forum JOKRIS.INFO - JOKRIS.INFO - Rozszerzenia, dodatki do Joomla! i Mambofireboard Forum Component version: 1.0.0
Generated: 7 March, 2017, 04:18

Podobne dokumenty