Jump to content
php.lv forumi

2easy

Reģistrētie lietotāji
  • Posts

    1980
  • Joined

  • Last visited

Everything posted by 2easy

  1. wooooooooooooooow amazing unbelievable omg nē nu es vnk nevaru... tas strādā!!!!!!!!!!!!!!!!!! un visur strādā! :))) kr4 man kkad agrāk bija sarežģītāks risinājums, bet šodien tam piegāju pilnīgi no jauna un izmēģināju visādas lietas šodienas skatījumā. un arī atklāju vienu labāku risinājumu nekā bija toreiz, bet nupat ienācā prātā pavisam vienkārša ideja. tiešām viss ģeniālais ir vienkāršs tātad tgd demonstrēju metodi ar pozicionēšanu (ar negatīviem margin arī var, bet tad ir jāraksta vairāk css,html) viss prikols slēpjas tajā apstāklī, ka position:absolute var vienlaicīgi uzlikt gan top, gan bottom un bloks pats izstiepjas pa vidu. sooo simple!!!! caurspīdīgu backgroundu gadījumā tas ir ideāli, jo vidējais backgrounds nepalien zem top,bottom backgroundu transparent apgabaliem. līdz ar to var pilnībā apiet visu maģiju ar negatīviem marginiem un negatīvām relatīvām pozionēšanām :P nju tad enjoy ;) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><title>test</title> <style type="text/css"> #bx {position: relative; width: 180px; min-height: 40px; padding: 0 10px} #bx-t {background: url(i/bx-t.png); position: absolute; top: 0; left: 0; width: 100%; height: 20px; z-index: -1} #bx-m {background: #ccc; position: absolute; top: 20px; bottom: 20px; left: 0; width: 100%; z-index: -1} #bx-b {background: url(i/bx-b.png); position: absolute; bottom: 0; left: 0; width: 100%; height: 20px; z-index: -1} </style> <!--[if ie 6]><style type="text/css"> #bx {height: 60px} #bx-t, #bx-m, #bx-b {width: 200px} #bx-m {height: expression(this.parentNode.clientHeight - 40 + "px")} img, input {behavior: expression(this.style.behavior = "none", /png$/.test(this.src) ? (this.style.width = this.width + "px", this.style.height = this.height + "px", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + (this.src) + ")", this.src = "i/sp.gif") : 0, void 0)} div, a {behavior: expression(this.style.behavior = "none", this.currentStyle.backgroundImage.substr(this.currentStyle.backgroundImage.length - 6) == '.png")' ? (this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.currentStyle.backgroundImage.substr(5, this.currentStyle.backgroundImage.length - 7) + ",sizingMethod=scale)", this.style.background = "none", this.style.zoom = 1, this.tagName == "A" ? this.style.cursor = "pointer" : 0) : 0, void 0)} </style><![endif]--> </head><body> content before <div id="bx"> <div id="bx-t"></div> <div id="bx-m"></div> <div id="bx-b"></div> asdf<br />asdf<br />asdf<br />asdf<br />asdf<br />asdf<br />asdf<br /> </div> content after </body></html> šādi izskatās top un bottom background bildes (to whitespace apkārt aplika bilžu hosts, un stūri ir caurspīdīgi - png alpha transparency) šī metode ir notestēta un strādā uz ie6,ie7,ie8,ff,opera,safari,chrome pāris atšifrējumi, ja nu kādam kkas ir nesaprotams (sry, bet kodu patīk rakstīt small & simple, izmantojot "labi zināmos" saīsinājumus :P) bx - box (kastīte/bloks) bx-t - box top bx-m - box mid/middle bx-b - box bottom info pēc ieliku arī, kā tas izskatās uz ie6, ja neveic nekādus fix bet kad tam iebaro pāris ie6 specific css rindiņas, tad jau arī tas sāk uzvesties normāli kr4 no tevis 5 Ls par risinājumu (joks) vispār jau paldies tev, ka uzdevi šo jautājumu, a to es tā arī turpinātu lietot kkādas daudz neefektīvākas metodes... :D:D:D galvenais tik uzdot pareizos jautājumus ;)
  2. pag, man ir ideja ar negative margin varbūt sanāks, bet vēl taisu simple example...
  3. bet šis ir nopietns Vilks :D +1 yep, normāli ievieš kkādu intro lauku, kur autors iekopē saīsinātu tekstu, ko pats atzīst par labu esam, nevis tik cik skripts nogriezīs parasti iekš cms šāds intro lauks ir vnk textarea, kamēr pašu rakstu var rediģēt ar wysiwyg
  4. vispārīgi runājot, tā jau ir koda redaktora fīča, nevis IDEs un, manuprat, tādai fīčai kā atverošo/aizverošo iekavu menedžments 1) kad kursors ir uz atverošās iekavas, tad automātiski izceļās aizverošā 2) ja nav aizverošā, tad atverošo iekrāso sarkanu (vieglāk pamanīt, kur rodas parse error) vajadzētu būt katrā koda redaktorā, bet manā editplusā tā nav :( lai gan kādā nākamā versijā šī fīča mierīgi varētu tur parādīties tāpat arī parastā koda redaktorā var ielikt kkādu php/js parseri/interpretatoru un nočekot, vai visiem funkciju izsaukumiem ir definēta attiecīgā funkcija, lai interpretējamas valodas gadījumā (kādas ir php,js) to pamanītu uzreiz, nevis kkad vēlāk during runtime. vēl varētu salikt arī kkādus tūļus, kas čeko kodēšanas stilu (atbilstoši rakstā minētajiem ieteikumiem vai to alternatīvām) un reportē, kur stils nav ievērots. etc etc etc bet pag, vai tad ide nedara līdzīgas lietas? pēc tā paša wikipēdijas linka ide consists of: * source code editor * compiler and/or an interpreter * build automation tools * debugger visu to pašu var iebūvēt arī koda redaktorā! un starpība starp koda redaktoru un idi tad kļūst visai relatīva sanāk, ka mēs te pirmīt lauzām šķēpus ap neko!!! :D:D:D drīzāk ir jāsalīdzina nevis "koda redaktors vs ide", bet gan "viens izstrādes rīks vs cits izstrādes rīks" tad vismaz būtu objektīvāk un pēc būtības
  5. un es arī vēlreiz saku, ka es tač to ļoti labi saprotu ;) jau vairrākārt manis teiktajam zemteksts ir tāds, ka vajag izdarīt izvēles atbilstoši situācijai, un tas nav nekādā konfliktā ar to, ko tu saki. patiešām! tavam pēdējam postam piekrītu pa 100%, tikai pirms tam laikam tu izlasīji kko citu nekā es domāju...
  6. zinot vēsturi, var labāk saprast, kāpēc šodiena ir tāda, kāda tā ir... lol, es gan nezinu, no kurienes tu ņēmi, ka man nav skaidra lietas būtība? es taču piekrītu, ka ide ir krutāka un līmenis ir augstāks. apsveicu, ka esi to sasniedzis ;) ja tev patīk domāt rāmīšos "pareizi/nepareizi" un pieturēties pie savas "ide only" un "ide for everything" filozofijas, tad go for it. varbūt, tev ir baigi svarīgs tas līmenis, kurā esi, un tāpēc cits "zemāka" līmeņa izstrādes rīks uzreiz asociējas ar zemāku līmeni, no kura tu iekšēji baidies vai negribi pieņemt. bet man ir p..uj kādos līmeņos mēs te esam. es uz to skatos savādāk (varbūt elastīgāk): ir dažādi uzdevumi, un ir dažādi instrumenti, un katrs izvēlas to, kas kuram ir ērtāks btw, vai tiešām nevar pamanīt, ka mans pirmais posts šajā tēmā ir apzināti pievilkts pie kādas galējības, lai veicinātu diskusiju (kas arī izdevās)? :D:D:D
  7. nu jā, kad daudzas vienkāršas lietas saliek kopā, tad rodas kkas mazāk vienkāršs ;) manuprāt, ja jau sākotnēji ir laba koda arhitektūra/organizētība (labs sadalījums pa moduļiem un pēc iespējas lineāras dependencies), tad arī, projektam apaugot ar viskko, būs viegli to menedžēt. galvenais tajā kvantitātē nepakāst vienkāršību varbūt dažos gadījumos ide tiek izmantota tikai kā glābiņš, kad kkas ir uztaisīts 4erez izpūtēju? :P mūsdienās visādu tūļu pārbagātībai ir arī savs blakusefekts, ka tiek veicināta pavirša/nepārdomāta pieeja koda arhitektūrai: visu samet vienā čupā un tad meklē tūli, kas palīdzēs visā tajā orientēties :D man īsti nav priekšstata, kā koderi 70. gados c valodā rakstīja Unix'u, bet es domāju, ka viņiem nebija nekāda gui ide, bet gan vnkāršs teksta/koda redaktors (pilnīgi droši bez nekādiem autocomplete un varbūt pat bez syntax highlighting) un kompilators, ko palaist no komandrindas. un neskatoties uz to, taisīja augšā lielas lietas protams, es nevienam neieteiktu kodēt parastajā notepadā (ja nu vienīgi treniņa pēc, vai lai salīdzinātu, cik daudz ērtāks ir koda redaktors), taču tāpat arī es neizmantotu baigi advancēto tūli, ja es neizmantoju tās fīčas, kas tur ir. protams, idi vajag lietot tad, kad no tās ir reāli ieguvumi. tā ka tiešām it depends on project...
  8. hehe, es jau ar to pamanīju, tikai iekopējot to rindu savā editplus, lai nomainītu vērtību :P
  9. pārbaudi, vai visās rindās ir 3x "|". vnk ir par maz elementu masīvā tāpēc list() izraisa kļūdu/notice lol, no! vajag komatu!!!!!!!!!!!! funkcijas argumentus atdala ar komatu.... "|", $line p.s. briedi, šis ir labs treniņš, kā uzminēt potenciālos kļūdu paziņojumus no attiecīgā koda ;) just attitude...
  10. javisti var sēdēt savā augstajā plauktā un viņiem arī ir ieteicams izmantot IDE, taču tie, kas kodē vienkāršas lietas (html,css,js,php), tiem arī vajag vienkāršus instrumentus (kā notepad++ vai editplus), nevis kkādu kosmosa kuģi ar ūber paneļiem
  11. bloks sākas rindiņā 115. if ( file_exists(ABSPATH . '.maintenance') && !defined('WP_INSTALLING') ) { bet aizverošā "}" tā arī nav. to vajadzētu ielikt aiz 129. rindas vēl viens bloks sākas rindiņā 118. if ( ( time() - $upgrading ) < 600 ) { un tam arī nav aizverošā "}" "unexpected kkas" iemesls var būt gan missing ";" vai aizverošās pēdiņas, kā Aleksejs jau teica, gan arī missing aizverošā "}". tobish kkas agrāk nebija pabeigts, tāpēc tgd kkas ir unexpected :D šādas lietas debugo, aizkomentējot kodu pa blokiem, lai lokalizētu kļūdas apgabalu kad parse errora vairs nav (tad iespējams būs kāds runtime errors), tad var sīkāk apskatīt pēdējo aizkomentēto bloku nju šajā gadījumā es tā nedarīju. to neaizvērto kvadrātiekavu tāpat varēja pamanīt pēc bloku indentation hmm, vispār pēc koda loģikas (iepriekš tikai sintaksi chekoju) izskatās, ka tās "}" vajag tikai aiz tā html bloka! tb ir pazudis kkāds php gabals faila beigās <?php } } ?> kr4 šitais ir lol. tā kā potenciāli varētu būt arī tāda loģika, ka katru "}" vajag savā html gabala pusē, tad prosta aizgāju uz wordress saitu un nokačāju jaunāko versiju. un kā izrādās tajā wp-settings.php ir pāri pa 700 rindiņām. un vēl lielāks prikols ir tas, ka oficiālajā failā nav nekādi js!!! ļoti iespējams, ka kkāds vīruss ir modificējis to kodu (tikai pārcenties). ir tādas lietas redzētas... :D:D:D un pateicoties wordpress stilam, ka tas html liek iekš php if, to izdevās uzreiz pamanīt :P vnk iztīri kompi no vīrusiem, pirms tālāk kko dari... ;)
  12. būtu forši, ja tu pēc tam arī šeit to parādītu. droši vien vēl kādam tas var noderēt
  13. laikam uzdodu pārāk daudz un pārāk sarežģītus jautājumus... :D:D:D
  14. sāk jau palikt smieklīgi, bet cik tad simbolu ir vienā rindā?
  15. tādā gadījumā, lūdzu, nodefinē, kas ir "3 rindiņas"?
  16. njaa diezgan loģiski, ka tie, kas lieto proxy, neļaus darbināt nekādas javas un flashus. tā ka šādi mēģinājumi atklāt elite proxy ir nolemti fail btw, Aleksej, ja arī no klienta līdz proxim būtu tie n-tie ssh tuneļi (ja es pareizi sapratu?), tad no proxy uz web serveri tālāk jau gan ir parasts http/https savienojums, un web serveris tač redz pēdējā tuneļa galapunkta ip. vai ne? es tik intereses pēc pajautāju. pats neizmantoju ne proxy, ne ssh. tikai mēģinu iztēloties visu to shēmu hmm, palasīju par to Tor. tiešām iespaidīgi! sanāk, ka jebkurš useris, uzinstalējot Tor softu, var kļūt par proxy, vai tikai par posmu/relay tajā tīklā https://torproject.org/overview.html.en ja tā ir, tad var gadīties, ka kāds, izmantojot manu kompi kā proxy, sastrādā cūcības kādā lapā ar manu ip, un kad es vēlāk pats ieeju tajā lapā bez nekādiem proxy, tad esmu jau nobanots :D:D:D tad man vienīgā iespēja apmeklēt to lapu būtu pašam izmantot proxy :D kr4 prikolīgi. un šitā infa arī ir labā https://torproject.org/faq-abuse.html.en man jau arvien vairāk liekas, ka ar to elite ip atpazīšanu Morphius grib izcīnīt kko mission impossible. kurš proxy pats atsūta kādu headeri par sevi, tam requestam arī var pateikt, ka tas nāk no transparent/anonymous proxy. bet pēc tam kko meklēt pēc ip jau ir par vēlu. ja nu vienīgi dažus prokšus var atklāt, skanējot portus (neesmu mēģinājis), vai arī izdodas atrast to ip kādā publiskā prokšu listē (kur ir tikai proxy, nevis kā Tor gadījumā aiz ip var būt gan īstais useris, gan proxy useris http://proxy.org/tor.shtml) haha, good luck Morphius :D:D:D
  17. maziem tekstiem (pāris KB) tiešām nav atšķirības, bet sākot no kādiem 10KB var pamanīt, ka ar strpos() ir ātrāk. array menedžmentam tomēr ir ievērojams overhead, salīdzinot ar vnk staigāšanu pa stringu: function firstLines($s, $i) { $iPos = -1; while (false !== ($iPos = strpos($s, "\n", $iPos + 1))) if (!--$i) break; return $iPos === false ? $s : substr($s, 0, $iPos); } echo firstLines("111\n222\n333\n444\n555", 3); // 111 222 333
  18. un uz mysql official reference arī nevar paļauties? http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html tātad pēc mysql dokumentācijas sanāk, ka max atļautie ir simboli/chari, nevis baiti. protams, ka db pati menedžē, cik daudz vietas vajag konkrētajam char/varchar pie attiecīgā kodējuma, tādējādi noslēpjot zemāka līmeņa tehniskās nianses. tāpēc jau visādas dbms tika radītas, lai atvieglotu darbu programmētājiem ok, no vārdiem pie darbiem: notestējam, vai pie char/varchar limitiem rodas kkādi gļuki, kas nesaskan ar mysql dokumentāciju: function qs($s) { // sagatavo stringu priekš sql query return is_null($s) ? 'NULL' : "'" . mysql_real_escape_string($s) . "'"; } function go($sSql) { // mysql query ar error reportingu $h = mysql_query($sSql) or die('<b>mysql error ' . mysql_errno() . ':</b> ' . mysql_error() . '<br /><b>query:</b> ' . substr($sSql, 0, 1000)); return $h; } function estr($s) { // echo string for debug (baiti:chari:strings) echo 's:' . strlen($s) . ':' . mb_strlen($s, 'utf-8') . ':' . $s . '<br />'; } // testa dati/strings sastāv no utf8 'ā', 253x nullītēm un flaga '123'. šo stringu iebarošu abiem tabulas laukiem // ja taisnība ir mysql dokumentācijai, tad vietas pietiktu pirmajiem 255 simboliem, bet atlikušie '23' tiktu notrimoti // ja taisnība ir Vilkam, tad divbaitīgajam 'ā' vajadzētu atstāt aiz borta visus trīs '123' $s = 'ā' . str_repeat(0, 253) . '123'; estr($s); // s:258:257:ā0000000000...0000000000123 (baiti ir par vienu vairāk nekā chari, jo utf8 'ā' aizņem 2x baitus) go('DROP TABLE IF EXISTS t'); go('CREATE TABLE t (c char(255), s varchar(255)) ENGINE=MyISAM CHARSET=utf8'); go('SET NAMES utf8'); go('INSERT INTO t (c, s) VALUES (' . qs($s) . ', ' . qs($s) . ')'); list($sChar, $sVarchar) = mysql_fetch_row(go('SELECT * FROM t')); estr($sChar); // s:256:255:ā0000000000...00000000001 estr($sVarchar); // s:256:255:ā0000000000...00000000001 // and the winner is... mysql dokumentācija!!! congratz ;) šo kodu notestēju uz 2 dažādiem mysql serveriem (versijas 4.1.22 un 5.0.75), un abās vietās no problem Vilks, varbūt tev bez tā "pamatojuma" ir arī konkrēts piemērs (kkas ko var izpildīt un pārliecināties)? pat ja ir kkāda mysql mode/settingi, pie kuriem tā notiek, tad kādi? savādāk ar tādām frāzēm no sērijas "man vnreiz kkad kkā tā gadījās" tu tikai radi kkādus mītus visticamāk, ka tas, ko Vilks reiz "pārbaudīja uz savas ādas", varēja gadīties, kad insertojamo datu kodējums atšķiras no tabulas kodējuma, piemēram, tabulai ir cp1257, bet tajā inserto utf8 datus restaurēju šo situāciju... go('DROP TABLE IF EXISTS t'); go('CREATE TABLE t (c char(255), s varchar(255)) ENGINE=MyISAM CHARSET=cp1257'); go('SET NAMES cp1257'); go('INSERT INTO t (c, s) VALUES (' . qs($s) . ', ' . qs($s) . ')'); list($sChar, $sVarchar) = mysql_fetch_row(go('SELECT * FROM t')); estr($sChar); // s:255:254:ā0000000000...0000000000 estr($sVarchar); // s:255:254:ā0000000000...0000000000 // tgd patiešām ir notrimoti visi trīs '123', jo vienbaitu kodējumā cp1257 katrs utf8 'ā' baits tika uzskatīts par astsevišķu simbolu/charu
  19. gan tavs jautājums, gan mana atbilde pēc būtības bija par debugošanu varbūt tu gribēji, lai es pasaku, kurā failā un kurā rindiņā tev tur ir kkāds bugs? dažreiz problēma tiešām ir iepostotajā koda fragmentā, bet dažreiz kkur citur (tur tač ir vesela sistēma), bet dažreiz vnk datu bāzē nav pareizie/expected dati, un lasot postu tos nekādi nevar pārbaudīt. turklāt, kā redzams šajos koda gabalos, tu nemaz nečeko mysql errorus, kā arī nepārbaudi vai vispār kāda rinda tika selectēta (varbūt ir 0 rows?) kr4 dažreiz max, ko var palīdzēt, ir tikai parādīt virzienu, bet jāiet ir tev pašam un man liekas, ka debugojot kko, kas gļučī tikai botam, vajag sākt ar to, ka tu redzi to pašu ko bots
  20. hmm, ja tu valodu saproti, bet nesaproti tikai pašu paskaidrojumu, tad mācies ar piemēru. ņem kaut vai tos pašus piemērus no manuāļa un izpildi. tad kko pamaini kodā un skaties, kas izmainās. tipa paspēlējies ar to switch, lai saprastu, kas tā ir par rotaļlietu ;)
  21. lol, kad tu ieliki šo topicu, es patiešām nodomāju, ka tev naktī nenāk miegs un vnk gribi papļāpāt par switch, tipa varbūt kādam ir bijuši kkādi prikolīgi bugi, strādājot ar switch, vai kāds interesants piemērs. bet izrādās, ka tu meklē info, kas jau ir manuālī :D:D:D tagad man ir skaidrs, kāpēc šajā forumā ir tik daudz rtfm jautājumi :P btw, valoda tač mūsdienās vairs nav šķērslis. google translate ftw 1) ieraksti googlē php.net/switch 2) blakus pirmajam rezultātam uzspied "Tulkot šo lapu" http://translate.google.lv/translate?hl=lv&sl=en&u=http://php.net/manual/en/control-structures.switch.php&ei=cV0vS6WVM4z1_AaJ4ej9CA&sa=X&oi=translate&ct=result&resnum=1&ved=0CAoQ7gEwAA&prev=/search%3Fq%3Dphp.net/switch%26hl%3Dlv%26client%3Dfirefox-a%26rls%3Dorg.mozilla:lv:official%26hs%3D8NM automātiskais tulkojums, protams, nav tik labs, kāds būtu dabiskais (viss tiek iztulkots pārāk burtiski), taču atsevišķus key vārdus (pēc kuriem var noteikt teikuma jēgu) jau var apskatīties arī vārdnīcā. angļu valoda ir ļoti vēlama anyway, ja nopietni gribi līst iekšā šajā sfērā aa un ja pie search rezultātiem nav linka "Tulkot šo lapu", tad ej uz "Search settings" un uzliec Interface Language: Latvian un "Save Preferences"
  22. 2easy

    Web playeri

    aizsargāt pret kačāšanu/kopēšanu varētu sūtot kriptētu straumi, lai tikai attiecīgais web playeris to prastu atkodēt un parādīt (tas samazinātu interesi kko kopēt, bet kopēt varētu anyway). tas, protams, būtu uz performances rēķina, bet mūsdienās jau client cpu paliek arvien ātrāki, tā ka tā pat varētu nebūt problēma. anyway tas būtu īslaicīgi, kamēr kāds tiek pie kriptēšanas algoritma/key vai vēl labāk uzražo cracku, papildinot playeri ar podziņu "save as" :D:D:D tā ka vari droši necīnīties, mēģinot kādam kko neļaut :P
  23. ok, no 192.168.*.* ir maz tolka, bet varbūt javisti zin, kā šādam NAT dabūt ārējo ip? Web Developer tava iespēja paspīdēt :))
  24. btw, kas tev tik apjomīgs ir jāglabā, ka nepietiek ar vnk text? varbūt bildes vai kādi upload faili? tos gan labāk liec folderī un db glabā tikai path oops, neizalsīju otro rindu from renathy article_title varchar(100) // vai varchar(200), ja ir gaaaarš title article_content text // normāli būtu jāpietiek ar atliektiem galiem. un kurš tad lasītu rakstiņu, kam ir vairāk par 65k chari? :D ja tabulai ir norādīts charset utf8, tad varchar garums = utf8 simbolu skaits (nevis baiti) c valodā gan datu tips char = byte, bet mysql char ir augstāka līmeņa abstrakcija ;)
×
×
  • Create New...