Jump to content
php.lv forumi

2easy

Reģistrētie lietotāji
  • Posts

    1,980
  • Joined

  • Last visited

Everything posted by 2easy

  1. man jau labāk patīk, ka nosaukums ir informatīvāks, nevis kkāds random abrakadabra, bet nu tā ir gaumes lieta ;)
  2. pievieno info par bildi tabulā, dabū id ar mysql_insert_id(), move_uploaded_file() uz jauno vietu ar jauno nosaukumu
  3. hahaha šitais vēl labāks noskatāties līdz beigām :D:D:D
  4. matrixā gan visu var apgūt uzreiz :D:D:D
  5. fantastic response time ;) turklāt vienos naktī! :D ar tādu pat kruti maksas user support servisi varētu lepoties
  6. relatīvajam path vajadzētu būt ok, ja tajā vietā ir attiecīgais folderis neiedomājos, ka viņš nečeko pathus... bet tik iemet kkur :D
  7. pilnīgi piekrītu. vnk es sākumā padomāju, ka viņam tur safe mode ir (jo cik sapratu, it kā uz viena servera strādājot, bet kkur citur nē), un tā kā safe modē laikam move_uploaded_file() ir atslēgts, tad ieteicu rename() (lai vispār kkas strādātu). bet tgd jau skaidrs, ka šis ir labs piemērs, ka internetā var atrast daudz skriptus, kuru kvalitāte ir zem katras kritikas. šeit nav elementāra error apstrāde (varbūt bija pārāk liels fails, vai vispār nav nosūtīts fails, varbūt nepareizs name?) sazin kas tur ir...
  8. značit fails vnk nav uploadots. pirms move, vajag pārbaudīt $_FILES['upload']['error'] more info here http://php.net/manual/en/features.file-upload.php
  9. move_uploaded_file() vietā pamēģini rename()
  10. http://www.php.net/manual/en/features.safe-mode.functions.php
  11. nu jā, taisot "skriptu" par dažiem desmitiem Ls, bankas komisija un juridisko pakalpojumu izmaksas droši vien smagi pārsniegtu paša "produkta" izmaksas :D vsp es jau nemaz nebiju domājis, ka vidutājs tādiem maziem darījumiem varētu būt banka vai kkāds juristu vai sazin kāds tur 3rd party kantoris, bet drīzāk gan kāds abiem zināms čuvaks vai kkā tamlīdzīgi ;) vēl risku var samazināt, sadalot darbu & maksājumu pa daļām: izdara 20% saņem 20%, izdara nākamos 20% saņem nākamos 20%, ... čakars jau ir ar vairākiem pārskaitījumiem, taču ātrāk var pamanīt, kura puse nepilda saistības
  12. vnk nevarēju atturēties neatbildēt uz šo :D:D:D $gnTime = 0; function timeu() {list($sSecU, $sSec) = explode(' ', microtime()); return $sSec + $sSecU;} // izdod pašreizējo laiku: sekundes + mikrosekundes (aiz "komata") function timerSet() {global $gnTime; $gnTime = timeu();} function timerGet() {global $gnTime; return round(timeu() - $gnTime, 6);} function timerEcho($sInfo = '') {printf('%s%.4f<br />', $sInfo, timerGet());} // parāda laiku ar precizitāti līdz 100 mikrosekundēm (ilgākām darbībām). lielākas precizitātes mērījumiem desmitos mikrosekunžu (vai vēl mazāk) ir jāņem vērā arī pašas funkcijas izsaukuma laiks (tb tad būtu jāaprēķina function call overhead) function ipRand() {return rand(0, 255) . '.' . rand(0, 255) . '.' . rand(0, 255) . '.' . rand(0, 255);} function ipLoad() { // izveido testa datus: failu ar 100 000 random ip adresēm (atdalītas ar komatu) $h = fopen('ip.txt', 'w'); for ($i = 0; $i < 100000; $i++) fwrite($h, ($i ? ',' : '') . ipRand()); fclose($h); } function ipLoadTimer() { // ielādē datus un parāda, cik tas paņem laiku timerSet(); ipLoad(); timerEcho('IP ielāde: '); } function ipSrchTimer() { // noskaidro, ar kuru funkciju var ātrāk atrast ip adresi (vispārīgāk: kā ātrāk stringā atrast citu stringu) $s = file_get_contents('ip.txt'); $sIp = substr($s, -1 * (strlen($s) - strrpos($s, ',') - 1)); // paņem pēdējo ip, kuru tad arī pēc tam "meklē" (tas nekas, ka tā atkārtojas arī kkur pa vidu) $sIp2 = '111.222.333.444'; // lai rezultāti būtu objektīvāki, meklē gan ip, kas ir, gan "ip", kas tur noteikti nav timerSet(); $b11 = (bool) ereg($sIp, $s); timerEcho('ereg(): '); timerSet(); $b12 = (bool) ereg($sIp2, $s); timerEcho('ereg(): '); timerSet(); $b21 = (bool) preg_match('/' . $sIp . '/', $s); timerEcho('preg_match(): '); timerSet(); $b22 = (bool) preg_match('/' . $sIp2 . '/', $s); timerEcho('preg_match(): '); timerSet(); $b31 = strstr($s, $sIp) !== false; timerEcho('strstr(): '); timerSet(); $b32 = strstr($s, $sIp2) !== false; timerEcho('strstr(): '); timerSet(); $b41 = strpos($s, $sIp) !== false; timerEcho('strpos(): '); timerSet(); $b42 = strpos($s, $sIp2) !== false; timerEcho('strpos(): '); } ipLoadTimer(); // izpilda 1x, lai ielādētu testa datus (pēc tam aizkomentē) ipSrchTimer(); // izpilda daudzreiz, kamēr iegūst pietiekami ticamu vidējā laika novērtējumu /* aptuvens vidējais rezultāts uz mana pc: IP ielāde: 1.7000 ereg(): 0.0150 ereg(): 0.3500 preg_match(): 0.0010 preg_match(): 0.0250 strstr(): 0.0025 strstr(): 0.0100 strpos(): 0.0003 strpos(): 0.0100 */ vietu sadalījums pēc ātrākajām funkcijām kopvērtējumā (meklēšana ar pozitīvu/negatīvu atrašanas rezultātu) iekavās ir ātruma uzlabojums (n-reizes), salīdzinot ar lēnāko 1) strpos() (35x) 2) strstr() (29x) 3) preg_match() (14x) 4) ereg() (1x) šajā testā strpos() izrādījās 35x ātrāka par ereg()!!! :D:D:D kr4 ereg()/eregi() ir slow ass. dont use em :P strpos() ftw
  13. apskaties to linku un ieej kā viesis. tur ir info no lekciju materiāliem, ko projicē uz ekrāna (prezentācija)
  14. es tač tur nemācos. vnk info atradu vispār jau programmēšanu pārsvarā apgūst pašmācībā: lasot & experimentējot. pat apmeklējot stundas/lekcijas/kursus, pasniedzējs var izstāstīt tikai kādu daļu - pašu svarīgāko. tāpēc pašam kkas jālasa būs tik un tā, jo info ir pārāk daudz. taču tgd tā nav problēma - inets ir, un visa nepieciešamā info ir pieejama. vajag tik lasīt un uzreiz praktiski izmēģināt izlasīto (lasīt vien gan ir maz jēgas)
  15. varbūt vari iet uz LU kā brīvklausītājs (nez vai vēl tā drīkst) vismaz tgd 2. semestrī tieši sāksies par php http://estudijas.lu.lv/course/view.php?id=236 bet nu jebkurā gadījumā iesaku skolā cītīgi mācīties angļu valodu, lai vari patstāvīgi lasīt manuāļus, dokumentāciju/reference/specifikācijas un arī tos pašus tutoriāļus... jo visu tev tāpat neviens pa skype neizstāstīs :D un web izstrāde jau nesastāv no viena paša php ;)
  16. hmm, tad atkal riskē pircējs. un tie šajā sfērā dažkārt tā "iepērkas", ka maz neliekas lai risks nebūtu ne pārdevējam, ne pircējam, vajag neatkarīgu trešo personu. pircējs tam ieskaita naudu, tādējādi apliecinot, ka ir spējīgs norēķināties par preci. kad pārdevējs to būs arī uzkodējis un pircējs akceptējis (ir tas, kas sākumā runāts), tad nauda tiek pārskaitīta pārdevējam. ja ar izstrādi ir aizķeršanās, tad var savstarpēji vienoties pagarināt laiku, vai arī atcelt darījumu (tad naudu atskaita atpakaļ pircējam). atrunājot pāris vienkāršus nosacījumus, šāda shēma ir kā abpusēja apdrošināšanās. sanāk tāda kā transakcija ar rollback on error :D:D:D
  17. tieši nevajag bloķēt. labāk lai visi zin, kas tas ir par fruktu, nevis ka viņš nevienam nezināms uzrodas ar jaunu nicku no citas ip :P nu kā, tas taču normāli. viņš pārdod, dabū naudu, norēķinās ar tevi par darbu, starpību patur sev. tas saucās bizness ;)
  18. 2easy

    FancyBox

    to parent vajag tikai tad, kad fancyboxā ir iframe
  19. tad drīzāk būtu jāsavāc lielāks bars ar klausītājiem. savādāk 1:1 ir baigi ekskluzīvi
  20. gribi izspiest pēdējo kabatas naudu? :D:D:D
  21. wapletam taisnība. clear:both vajadzēja izbeigt floatošanos un nākamajam blokam (footerim) jau vajadzēja attēloties zemāk. njaa, bet #footeris jau ir ar clear:both, taču tas nedarbojas. hmm, savādi. pamēģini pirms #footeris ielitk atsevišķu <div style="clear:both"></div> otrs variants ir visus floatotos div (bloks1,bloks2,bloks3,bloks4) ielikt vēl vienā div (konteinerī/wrapperī) un tam uzlikt overflow:hidden. tipa <div style="overflow: hidden"> <div style="float: left">kkāds floatots bloks</div> <div style="float: left">vēl viens floatots bloks</div> </div> šis būs zem zemākā float efektam jābūt tādam pašam - visi nākamie teksti/bloki būs zem zemākā float bloka
  22. ja zini angļu valodu, tad php manuālī viss ir labi uzrakstīts
  23. 2easy

    Diziana kļūda

    ja jau vajag kreisajā pusē, tad kāpēc ir float:right? ;) vispār float:right tāpat nevajag, jo floatotie bloki aizņem visu vietu un pēdējais tik un tā būs labajā pusē. tāpēc var uzreiz visiem likt float:left un saliec pareizajā secībā: login,jaunumi,jaunakais jaunumiem uzliec tādu width, lai vairs nepietiek vietas priekš jaunakais un tad tas automātiski sāksies zemāk zem login
×
×
  • Create New...