Jump to content
php.lv forumi

briedis

Moderatori
  • Posts

    4,669
  • Joined

  • Last visited

Everything posted by briedis

  1. 50 ieteikumi, lai optimizētu kodu http://www.hm2k.com/posts/50-php-optimisation-tips-revisited
  2. DIV'am var būt norādīts platums, bet iebāzt iekšā var arī lielāku elementu, teiksim bildi. Tad nāk talkā propertijs overflow:visible|hidden|scroll|auto, un tad tomēr saturs var būt platāks par width (arī loģiski, ne? :) )
  3. briedis

    Janhouse

    Un ko tu teiksi policijai? Es pārskaitīju uz kaut kādu kontu naudu, un tagad nevaru viņu dabūt atpakaļ? :D
  4. briedis

    searchform

    DOCTYPE ir norādīts? A kas šeit par joku, ka beidzās nesācies div elements? <li class="navigationlisearch">search forma</div></li>
  5. Uzstāda faila kodējumu uz Utf-8 without BOM Notepad++ -> Format -> ...
  6. Kavacky, ja tā, tad lūdzu pielietojuma piemērus studijā! :)
  7. Tā kā twittera API ir dažādi ierobežojumi uz pieprasījumu skaitu, vērtīgāk ir JSON datus iekešot lokāli (uzlabosies arī pieprasījuma ātrums), un atjaunot tikai reizi 5 minūtēs (vai līdz pirmajam apmeklētājam). <? function updateTwitter(){ $path = "js/twitter.json"; //Vieta, kur glabājas JSON dati $username = "username"; //Lietotājvārds $entry_count = 6; //Atgriežamo ierakstu skaits $update_interval = 300; // 5 minūtes $url = "http://twitter.com/statuses/user_timeline/$username.json?callback=twitterCallback2&count=$entry_count"; $stat = stat($path); $last_mod = (int)$stat[9]; $delta_mins = time() - $last_mod; if($delta_mins > $update_interval){ if($json_data = @file_get_contents($url)){ //Suppress warnings, ja neizdodas dabūt datus file_put_contents($path,$json_data); }else{ touch($path);//Pabakstam failu, lai nav jāmēģina atkal, ja neizdevās dabūt datus } } } ?>
  8. 1. funkcija - iegūst faila paplašinājumu 2. funkcija - pārbauda, vai fails ir attēls (tikai pēc paplašinājuma, kā jau mēs zinām, mime tips arī nav 100% drošs avots :)) //Iegūstam faila paplašinājumu function getFileExtension($file_name){ $info = pathinfo($file_name); return $info['extension']; } //Pārbaudam, vai fails ir attēls function isImage($file_name){ switch(getFileExtension($file_name)){ case "jpg" : return true; case "jpeg" : return true; case "gif" : return true; case "png" : return true; case "bmp" : return true; } return false; }
  9. Samazina attēlu, lai iekļautos norādītajos izmēros. Pārraksta samazināto pa virsu orģinālajam. function imageResize($path,$max_width=300,$max_height=400){ if(!file_exists($path)){ return false; } $max_height = (int)$max_height; $max_width = (int)$max_width; $src_img = imagecreatefromjpeg($path); $x = imagesx($src_img); $y = imagesy($src_img); if(($x >= $y) && ($x > $max_width)){ $picsize = $max_width; $new_w = imagesx($src_img); $new_h = imagesy($src_img); $aspect_ratio = $new_h / $new_w; $new_w = $picsize; $new_h = abs($new_w * $aspect_ratio); } if(($y > $x) && ($y > $max_height)){ $picsize = $max_height; $new_w = imagesx($src_img); $new_h = imagesy($src_img); $aspect_ratio = $new_w / $new_h; $new_h = $picsize; $new_w = abs($new_h * $aspect_ratio); } $dst_img = imagecreatetruecolor($new_w,$new_h); imagecopyresampled($dst_img,$src_img,0,0,0,0,$new_w,$new_h,imagesx($src_img),imagesy($src_img)); return imagejpeg($dst_img, $path, 80); }
  10. Pārvērš naudu vārdos $money - float skaitlis $currency - "LVL" vai "EUR" $lang - "ru" vai "lv" $separator - (kas atdala latus no santīmiem) Ierobežojumi Pārvērš robežās no 1.00 līdz 99.99 function getMoneyInWords($money,$currency="LVL",$lang="lv",$separator=","){ $tens['lv'] = array("Desmit","Divdesmit","Trīsdesmit","Četrdesmit","Piecdesmit","Sešdesmit","Septiņdesmit","Astoņdesmit", "Deviņdesmit"); $teens['lv'] = array("Vienpadsmit","Divpadsmit","Trīspadsmit","Četrpadsmit","Piecpadsmit","Sešpadsmit","Septiņpadsmit","Astoņpadsmit", "Deviņpadsmit"); $ones['lv'] = array("Viens","Divi","Trīs","Četri","Pieci","Seši","Septiņi","Astoņi", "Deviņi"); $tens['ru'] = array("Десять","Двадцать","Тридцать","Сорок","Пятьдесят","Шестьдесят","Семьдесят","Восемьдесят","Девяносто"); $teens['ru'] = array("Одиннадцать","Двенадцать","Тринадцать","Четырнадцать","Пятнадцать","Шестнадцать","Семнадцать","Восемнадцать", "Девятнадцать"); $ones['ru'] = array("Один","Два","Три","Четыри","Пять","Шесть","Семь","Восемь", "Девять"); $money_type['lv']['LVL']['santimi'] = "santīmi"; $money_type['lv']['LVL']['lati'] = "lati"; $money_type['lv']['LVL']['lats'] = "lats"; $money_type['lv']['EUR']['centi'] = "centi"; $money_type['lv']['EUR']['eiro'] = "eiro"; $money_type['ru']['LVL']['santimi'] = "сантимов"; $money_type['ru']['LVL']['lati'] = "латов"; $money_type['ru']['LVL']['lats'] = "лат"; $money_type['ru']['EUR']['centi'] = "цента"; $money_type['ru']['EUR']['eiro'] = "Евро"; $ready = ""; //Gatavā virkne $one = false; //ja true: lats; false: lati list($large,$small) = explode($separator,$money); $large = (int)$large; //Veselās naudas, piem. eiro, lati if($large > 9){ if($large > 10 && $large < 20){ $ready = $teens[$lang][$large-11]; }else{ $first = substr($large,0,1); $second = substr($large,1,1); $ready = $tens[$lang][$first-1]; if($second){ $ready .= " " . mb_strtolower($ones[$lang][$second-1],"UTF-8"); if($second == 1){ $one = true; } } } }else{ $ready = $ones[$lang][$large-1]; if($large == 1){ $one = true; } } if($currency == "EUR"){ $ready .= " {$money_type[$lang][$currency]['eiro']}, $small {$money_type[$lang][$currency]['centi']}"; }else{ $ready .= " " . ($one ? $money_type[$lang][$currency]['lats'] : $money_type[$lang][$currency]['lati']) . ", $small {$money_type[$lang][$currency]['santimi']}"; } return $ready; }
  11. briedis

    Popup

    kur tev tāds 'popup' radās? Aizstāj to ar '_blank' Un palasi specifikācijas: http://msdn.microsoft.com/en-us/library/ms536651%28VS.85%29.aspx
  12. Pag, kopš kura laika šis ir pareizais sakārtojums augošā secībā? ā, a, a, ā? Manuprāt(un pēc LV alfabēta), burts A ir pirms Ā
  13. Piedāvāju divus variantus :) <? $path = "/mape1/apaksmape1/vel_viena_mape/"; //Viens variants $tmp_p = substr($path,0,strlen($path)-1); //noņemam pēdējo slešu $str = substr($tmp_p,0,strrpos($tmp_p,"/")) . "/"; //Otrs variants $arr = explode("/",$path); array_pop($arr); array_pop($arr); $str = implode("/",$arr) . "/"; ?> Otrais tāds nesmuks :p Iesaku pirmo... Pareizi izpildīsies, ja būs attiecīgās prasības, tas ir, ceļš vienmēr būs ar "/" beigās un eksistēs direktorija "uz augšu"...
  14. briedis

    MARQUEE

    tas marquee tags nav miris? :) Nez, provē izmantot moš kādu JS skriptu, ka dara to pašu...
  15. http://lmgtfy.com/?q=html+refresh
  16. <?php class Klase{ private $var1; function __construct(){ $var1 = 1; } public function add(){ $this->var1++; } public function getVar(){ return $this->var1; } } $klase = new Klase(); echo $klase->getVar(); $klase->add(); echo $klase->getVar(); ?>
  17. class SomeClass{ private $var1; public function func1(){ $this->var1 = 10; } public function func2(){ return $this->var1; } } Palasi šitos: http://php.net/manual/en/language.oop5.php
  18. nu jā, sapratu problēmu. Jebkurā gadījumā file_exist būtu true, jo ja nav galā piekabināts faila nosaukums, direktorija tak eksistē tāpat :))
  19. Toč zini? Pārbaudi divreiz!
  20. Nezinu kā te var ISpalīdzēt, vienīgi uztaisot tavā vietā, jo pats neko neesi darījis. Ir vairāki varianti kā šo realizēt, un nebūs tik vienkārši izstāstīt... Varbūt sāc ar to, ka ir sākuma saraksts (div elements ar radio pogām), un katram radio buttonam ir attiecīgi cits saraksts (2. līmenis) pakārtots (paslēpti div elementi ar attiecīgo radio pogu sarakstu). Tad kā izvēlies sākotnējo kategoriju(atķeksē kādu radio pog), tā ar JS paslēp visus 2. līmeņa sarakstus, un parādi tikai 1 sarakstu, kas ir atbilstošs 1. līmeņa izvēlētajam. Utt. Te noteikti ļoti dzīvi atvieglotu jQuery... Kaut ko vari provēt meklēt pēc atslēgvārdiem - radio button subcategories, multilevel categories...
  21. Rādi šu, cik tālu esi ticis ar šo :)
  22. Varbūt norādi bildei pareizo ceļu? forums/upload/$bilde?
  23. Un? Kā tu vari zināt, vai ir avatars, vai nav? Kādā mainīgajā viņš glabājas? Tu jau te iekopēji kaut kādu if konstrukciju bez paša if'a nosacījuma, kur arī tiek izštukots, vai eksistē avatars, vai nē... Varbūt noder funkcija - file_exists()
×
×
  • Create New...