Jump to content
php.lv forumi

Venom

Moderatori
  • Posts

    1,918
  • Joined

  • Last visited

Everything posted by Venom

  1. Venom

    LMT

    1) nu, lai fonu dabūtu nost var padarboties ar imagefill() iekš kvadrātiņiem imageline() pa rūtiņu režģi, rūtiņas savukārt var uzminēt, pastaigājoties ar imagecolorat ā) no augšas uz leju dažus pikšeļus pa labi no augšējās kreisās malas bē) no kreisās uz labo, dažus piekšeļus no augšas - kamēr nesastop to viņu savādo krāsu. 2) te būs grūtāk. viens variants - no komandrindas barot imagu kaut kādam command-line OCR (go google, linuxam droši vien kaut kas tāds iraid) vēlams pirms tam burtus savienot (ejot no augšas uz leju vai no "sāņiem" pārbaudām, ja pikselis = fona krāsā, bet pikselis+1 un pikselis-1 - tajā sarkanā, tad aizplūdinām arī). Ja komandrindas OCR nav atrodams/izmantojams, tad mans tālākais variants: ā) cītīgi jāpiestrāda pie burtu atpakaļsavienošanas, lai, vienalga kāds tas režģis būtu, beigu rezultātā apstrādāts burts piekselis pikselī būtu vienāds bē) sagraizam bildi 3jos burtos (ejot no kreisās uz labo meklējam vertikālo līniju, kas pilnība fona krāsā un nograizam līdz tai) cē) apgraizam katru burtu līdz minimumam (ķipa crop) dē) ieglabājam kā šablonu ē) šim šablonam piešķiram tajā redzamā burta nosaukumu pie jaunās bildes saņemšanas izpildām fonošanu, 2ā līdz 2cē un tad salīdzinām ar esošiem šabloniem nu tas tā, pafantazējot
  2. tamdēļ jau teu tas AS arī vajadzīgs - lai atšķirt 'data's ir arī tāda lieta, kā JOIN - tabulu apvienošana pēc kaut kāda lauka SELECT table1.data as `main`, table2.data as `description` FROM table1 LEFT JOIN table2 ON table2.sec_id=table1.id vai izmantot vairāk, nekā divām tabulām. Ja izmanto RIGHT JOIN, tad atgriezīs tikai tad, ja abās tabulās ir sakritošas att. kolonnas, ja LEFT JOIN, tad būtu jāņem arī tad, kad otrā tabulā datu nav.
  3. Venom

    par templeitiem

    /me nelieto nekādas templeites, bet gan taisa kešošanu
  4. Nu, ja jau teu tik daudz apmeklētāju, tad tu esi ieinteresēts aiztaisīt konekciju jo ātrāk jo labāk. Otrs - varbūt tev jāapsver: MySQL konfigurācijas uzstādījumus vai izvēlēties citu serveri. kešošanu iekš $_SESSION vai failos, lai samazinātu pieprasījumus uz MySQL pārbaudīt skripta vidējo izpildes laiku - jo, piem, ja tas izpildās 10 sek, tad visas tās 10 sek varētu tikt turēta konekcija (ārstējams ar jo ātrāku mysql_close()). Apskatīties, vai uz servera nav "nolockotu" konekciju, kas vien tikai tur ir, bet neko nedara (zavislo, poņimaješ), izanalizētu no kurienes tās iraid un likvidēt.
  5. selected="selected" checked="checked" kaut kad varēja rakstīt bez "", ja nesaturēja atstarpes un citus simbolus kā [a-z0-9_]
  6. Venom

    par templeitiem

    <?php $title = "ezs page"; $sad = "sad"; $botom = "© ezs 2004"; $body = @implode('',@file('temp/text.php')); par šo brīnos šiem te ^ jābūt template apakšmasīvā $templ=@implode('',@file('temp/index.html')); $templ=str_replace('{body}',$body,$templ); steidzamies, steidzamies, tam visam automātiski jādarās lejā, kur foreach $templ=str_replace('{title}',$title,$templ); $templ=str_replace('{botom}',$botom,$templ); ob_start(); ?> {HEADER} <?php include 'temp/index.html'; //satur {welcome}{text} tev jau viš iekš $templ bija, vai ne? ?> {FOOTER} <?php $html=ob_get_clean(); foreach($tpl as $key=>$val) $html=str_replace('{'.$key.'}',$val,$html); echo $html; ?> tu jauc tods mainīgos, kas satur template vērtības un to, kur ir pati template. AIZMIRSTI par tādu template mainīgo, kā {body}, ieciklējies uz viņa esi, vai nu arī nepareizu jēgu piesaisti. labots variants <?php $tpl['title'] = "ezs page"; $tpl['sad'] = "sad"; $tpl['botom'] = "© ezs 2004"; $tpl['HEADER']='kaut kāda galvene'; $tpl['FOOTER']='kaut kāda kājene'; //galvenās lapas daļas, kas var saturēt citus {mainīgos} $priority=array('HEADER','FOOTER'); ob_start(); ?> {HEADER} <?php include 'temp/index.html'; //šis ķipa ir tas body, kurā ir {title}{sad}{bottom} echo '<br />{bottom}';//tā arī var maisīt ?> {FOOTER} <?php $html=ob_get_clean(); NB: $html satur: {HEADER} ...{title}...{sad}...{bottom}...<br />{bottom} {FOOTER} //nomainām prioritārās daļas while($key=array_shift($priority)) { $html=str_replace('{'.$key.'}',$tpl[$key],$html); unset($tpl[$key]); } //nomainām pārējos sīkumus foreach($tpl as $key=>$val) $html=str_replace('{'.$key.'}',$val,$html); echo $html; ?> ezs, mēģini izprast, nevis nokopēt un palaist (tik un tā nestrādās ;) )
  7. Venom

    par templeitiem

    Tu lasi ko tev atbild un piedomā pie tā ko lasi/raksti? (sorry, esmu sliktā noskaņojumā) ā) Tev no sākumā jāsastāda pilns lapas teksts, ar visām iespējamām templātēm, un tikai pēc tam visu mainīt. E.g. <?php ob_start(); ?> {HEADER} <?php include 'some.tpl'; //satur {welcome}{text} ?> {FOOTER} <?php $html=ob_get_clean(); /* tagad iekš $html mums ir {HEADER} {welcome}{text} {FOOTER} */ foreach($tpl as $key=>$val) $html=str_replace('{'.$key.'}',$val,$html); echo $html; ?> bē) viens no variantiem. pieņemsim, tu gribi izvadīt no mysqla rakstu, datumu un autoru, pie tam mainot dizainu: include 'some.tpl'; vietā mēs taisam, piem. include 'raksti.php'; kas darās sekojoši: //mysql savienojums etc. $tpl['body']=''; [b]variants ā, tagu simulēšana - dizaina atdalīšana no satura[/b] while($res=mysql_fetch_array...) $tpl['body'].='{DATUMS}'.date('Y/m/d H:i:s',$res['date']).'{/DATUMS}{RAKSTS}'.$res['article'].'{/RAKSTS}{AUTHOR}'.$res['author'].'{/AUTHOR}'; un kaut kur pēc tam nomainām {RAKSTS} piem. par <p>, bet {/RAKSTS} par </p>, bet citā gadījumā attiecīgi <div id="raksts"> un </div> utml. [b]variants bē, teplāšu atkārtošana - mainām izvietojumu/saturu[/b] $raksta_tpl=@implode('',@file('raksts.tpl')); /* raksts.tpl var saturēt piem. <p>{raksts}<br /><i>{autors}</i>, {datums}</p> vai <b>{autors}</b><br /> <p>{raksts}</p> {datums} utml. */ while($res=mysql_fetch_array...) { //note: arī raksti var saturēt templāšmainīgos! $tmp=$raksta_tpl; $tmp=str_replace('{author}',$res['author'],$tmp); $tmp=str_replace('{raksts}',$res['article'],$tmp); $tmp=str_replace('{datums}',date('H:i d/m',$res['stamp']),$tmp); $tpl['body'].=$tmp; } un beigās palaižām to, kas iet ar ob_get_clean, lai nomaina body pret attiecīgo vērtību abus variantus var un vajag maisīt <b>note:</b> jānodrošina, ka {BODY} vai cits "ietverošs" elements tiek aizvietots pirms visādiem "ietvertiem" sīkumiem. to var darīt vai nu pareizi iniciējot $tpl masīvu, vai nu ar rociņām pierakstīt str_replace('{BODY}'); str_replace('{datums}'); vai nu jāsastāda templāšmainīgo prioritāšu masīvs $priority=array('body','raksts','datums'); while($key=array_shift($priority)) $html=str_replace('{'.$key.'}',$tpl[$key],$html); cik cilvēku, tik pieeju
  8. Venom

    charsets

    tam jau viš server's iraid, visvarenais tas header() variants varētu palīdzēt, kaut gan neatrisina problēmu saknē
  9. kāpē? ja mazliet pielabo... $str="kautkas(1);kakis(2);suns(3);maaja(4)..."; $kovaig=4; $mas=explode(";",$str); /* mas = array (kautkas(1), kakis(2), suns(3) ...) */ $correct=array(); while($tmp=array_shift($mas)) { //$tmp=text(1) $tmp=str_replace('(','|',$tmp);//$tmp=text|1) $tmp=str_replace(')','|',$tmp);//$tmp=text|1| $tmp=explode('|',$tmp); //$tmp=array( text, 1, '' ) $correct[$tmp[1]]=$tmp[0]; //$correct[number]=text } echo $correct[$kovaig]; Ja vajag izvadīt vairākus "kovaig", tad šis variants varētu būt efektīgāks par preg.
  10. Venom

    charsets

    piezīme, domāts httpd.conf
  11. str_split nepamanīju $sms=str_split($text,200); while(sendSMS(array_shift($sms))); //of coss, sendSMS jāatgriež T/F par izpildi
  12. dotajā variantā es tāpatās pielietotu masīvu: $str="kautkas(1);kakis(2);suns(3);maaja(4)..."; $kovaig=4; $mas=explode(";",$str); $tmp=$mas[$kovaig]; $tmp=explode('(',$tmp); echo $tmp[0]; //izdos kakis mazliet pamainīts preg.variants: '#;?([^\(;]+)\('.$number.'\)#' nozīmē: ## "separatori", var izmantot pierastos / ;? - var būt vai arī nebūt priekšā semikols ([^\(;]+) vismaz viens simbols kas nav "(" (lai aizietu "līdz (") vai ";" (lai sāktu no ";" uz priekšu), ja iespējams, atkārtoti, tas viss tiek pārtverts iekš $1 {sīkāk: [] apzīmē simbolus kopu, +, ka simbols no kopas var atkārtoties vismaz vienu reizi, ^ priekšā simbolu kopai apzīmē "ne" - jebkurš simbols izņemot } \( pirms numura "(" vajadzīgais nummurs pēc numura ")" citādi uz "2" meklēšanu kopētu arī (23) Ja eclubs piecelsies, var pamācīties iekš VenRExp
  13. Venom

    par templeitiem

    ā) nu, "ierobežo" visus mainīgos, kas ir jāmaina kādā masīvā, e.g. $templ['body']='tas un tas'; $templ['title']='šis un cits kas'; foreach($templ as $key=>$val) $html=str_replace('{'.$key.'}',$val,$html); bē) ņemnogo ņepoņal naščet echo include, ko tu mēģini izdarīt, iekš body ielasīt tā include tekstu vai pamainīt $body tā, lai {body} vietā būtu cits fails? ja pirmais variants: go with $body=@implode('',@file('template.html')); ja otrais variants: go with include('/template'.$body.'.html'); trešais variants: if (..) $switched='index'; else $switched='other'; $body=@implode('',@file($switched.'.html')); $html=str_replace('{body}',$body,$html); es personīgi izmantotu sekojošo variantu: ob_start();//viss outputs tiek iekešots RAMā darāmies iekš php, inclūdojam templātes ar visiem {body} utml, neaizstājot tos $html=ob_get_clean();//tagad mumsīm iraid viss htmls ar visām templāšu mainīgiem pielietojam varinatu ā.
  14. Venom

    par templeitiem

    ā) $templ=@implode('',@file('body.html')); $templ=str_replace('{body}',$body,$templ); ... bē) Apache mod_rewrite human readable urls, go google
  15. '#;?([^\(]+)\('.$number.'#'
  16. ā) pārbaudīt e-pasta adresi ar pregu, vai tā ir a-z[_-a-z0-9]*@a-z[_-a-z0-9]*\.[a-z]{2,} virkne bē) atver telnet, piekonektējies kādam smtp serverim uz 25 porta un "parunājies" ar viņu HELO servera.domain.adrese.lv atbilde MAIL FROM: tādsuntāds@tāds.lv atbilde - ja sākas ar 250/220 kodu, tad ir ok, tāds jūzeris iraid RSET vai QUIT iekš php simulējams ar fsockopen(smtp,25)
  17. while($text) { $sms=substr($text,0,200); $text=substr($text,200,strlen($text)); sendSMS($sms); }
  18. Paskaties alt+ctrl+delete (ja tev ir NT-veidīgais), resp. process manager un ja tur iraid Apache - sit viņu nost. Skaties logus, kas nepatīk. Liec 1.3.27.
  19. Esmu 21 gadu vecs, bet tavs reklāmteksts nekur neder, īpaši frāze un izstrādātie darbi arī!. Vēlams darbu saraksts (vismaz links uz tavu mājaslapu/portfolio iekš profila), vai vismaz darbu profils/apraksts (darbs ar DB/portāli/administrācijas paneļi/pilnvērtīgas CMS etc). Man par brīnumu daudzi atrod darbu ar doska.lv-veidīgām sistēmām.
  20. uz pirmā skatiena SELECT `*` backticks (``) tiek izmantots, lai "noeskeipotu" speciālos SQL vārdus, piemēram, ir tāda funkcija AVG, bet tu gribi uztaisīt kolonnu avg, tad selectos tev būtu jāizmanto `avg`, lai MySQL nesāktu meklēt izpildījumu AVG() Kad tu norādi `*` tiek meklēta kolonna ar nosaukumu * (iespējams, bet pārāk izvirtīgi).
  21. taisnu taku uz http://www.imagemagick.org/
  22. Venom

    Kā labāk ?

    Tēma plaši apspriesta es pieturos pie pašbūvētā
  23. un tomēr paskaidrosi jautājumu līdz galam?
  24. tif, tiff, bmp, iff, jpc, jp2, jpx, jb2 Nav "standarta" internet formāti, tāpēc būs vien jāpārveido par kaut ko sagremojamu. Piemēram ar kādu batch programmiņu ar shell_exec varētu konvertēt automātiski. Vai mēģināt izmantot ImageMagick.
×
×
  • Create New...