Jump to content
php.lv forumi

l27

Reģistrētie lietotāji
  • Posts

    164
  • Joined

  • Last visited

Everything posted by l27

  1. l27

    Optimizācija

    uz id indeksa uzliec garumu 4. Ja tie ir primary key, tad noņem. No šāda pasākuma būs jēgas, ja id pirmie 4 simboli ir daudzmaz unikāli.
  2. Paldies par recenziju. Daudzas īpatnības ir saistītas ar esošās sistēmas standartiem. Otrais faktors ir laiks. Tākā sistēmā ieviesu autoloadingu, tad arī valūtas konstantes būt lietderīgi pārnest zem klases, kaut gan valūtas komplekti var atširties dažādām sistēmām.
  3. l27

    Optimizācija

    1) id saliec int tipu 2) selectā liec tikai kolonnas, kas vajadzīgas
  4. l27

    Optimizācija

    1) * vietā saliec tos laukus, kurus patiešam vajag 2) uztaisi indeksu, kura iekļāuj a.u_id (4 chari), a.id un selectā iekļaujamos laukus, ja tie nav text 3) jabūt indeksam b.id un b.c_id 4) tik nīkulīgām tabulām id vajadzētu smallint
  5. PHP klase bank.lv valūtas kursu nolasīšānai un saglabāšanai DB: https://github.com/uldisn/bank.lv-currency-rate Pieprasot valūtas kursu, tas tiek nolasīts no datubāzes. Ja nav iekš datubāzes, tad nolasa no Latvijas Bankas mājas lapas un pie reizes saglabā datubāzē. Tiek minimzēts pierasījumu skaits LB lapai, kā arī palielinās skripta izpildes ātrums.
  6. PHP klase bank.lv valūtas kursu nolasīšānai un saglabāšanai DB: https://github.com/uldisn/bank.lv-currency-rate
  7. l27

    Valūtu kursi

    PHP klase bank.lv valūtas kursu nolasīšānai un saglabāšanai DB: https://github.com/uldisn/bank.lv-currency-rate
  8. Noderīgs rīks: http://www.profilesql.com/ Savāc visus SQL pieprasījumus, ko PHP sūta uz MySql. Ērti pārskatāmi un vienkārši konfigurējams.
  9. Ir gatavs risinājums: http://sphinxsearch.com/docs/manual-0.9.9.html Kādos trijos projektos esmu ieviesis. salidzini.lv arī šo izmanto.
  10. Ja izvēlaties SMS pakalpojumu sniedzēju, tad noskaidrojiet: - cik ilgi darbojas. - kādi ir klienti un to atsauces Tā varat izbēgt no dažādiem pārsteigumiem. Ja patiešām ir lieli SMS apjomi (kas Lavijā ir izņemums), tad arī var kaulēties.
  11. http://www.mpakalpojumi.lv/ - strādā sen un stabili
  12. Viennozīmīgi nevar. Skatīt: http://www.regular-expressions.info/mysql.html
  13. Var jau tērēt laiku un mēģināt SMS nosūtīt pa lēto, tikai jāsarēķina: - iztērētais laiks - kvalitāte - izsūtīto SMS skaits Ja atmaksājas, uz priekšu!
  14. Tātad visiem mobilajiem operātoriem ir caurumi, kurus izmantojot var sūtī SMS pa brīvu?
  15. Apmēram 3-4 santīmi maksā SMS izsūtīšana izmantojot tevis sauktās starpniekfirmas. Jābūt ļoti nopietniem apjomiem, lai sāktu domāt, kā apiet starpniekus. Un ja ir nopietns apjoms, tad starpnieki iedos atlaides.
  16. Taisi divus selectus, kurus apveino ar union: - vienu no tabulas event - otru no tabulas favorit
  17. union parasti lietoju, lai samazinātu pieprasījumu skaitu datubāzei.
  18. Tāpat jāliek MySql ODBC, jāveido connections, jākodē. Kopsummā vairak laika aizņems. Ja regulāri jāveic imports, tad gan ir vērts veidot PHP skriptu.
  19. Pamēģini no www.bullzip.com. Man Access to MySql forši strādāja. Ja uztaisi connectionu accesā uz MS SQL un tad ar Bulzip mēģini konvertēt.
  20. Kā tad mēram ātrumu! Ja visus JS pieskaita, tad jau var sanākt.
  21. Klase failā. Piemērs $label=new label($lng); echo $label->show('title'); label.class.php
  22. Ja tabulas nav lielas , ielādē masīvā un pēc tam griezies pie masīva, nevis pie DB.
  23. Ja lapu būvē no daudziem querijiem un ja ir liels apmeklējums, tad ieteicams kešot lapu nemainīgās daļas failos un ar readfile() sūta klientam. Tā būvēju www.neslimo.lv
  24. Ja tie ir selekti, var mēģināt ar union apvienot. Tā samazinās sūtīto pieprasījumu skaitu.
  25. l27

    MySQL Trigri

    Es parasti ar PHP ģenerēju trigerus MySqlim. Sanāk šads: (izveidojot connection ar MySql, mainīgajam @global_user_id pieškiru aktuālo user_id, lai zinātu, kas labojis) CREATE /*!50017 DEFINER = 'root'@'localhost' */ TRIGGER `asociacija_logging` BEFORE UPDATE ON `asociacija` FOR EACH ROW BEGIN IF OLD.NOSAUKUMS != NEW.NOSAUKUMS THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'NOSAUKUMS', NEW.ID, 'u', OLD.NOSAUKUMS, NEW.NOSAUKUMS, NOW() ); END IF; IF OLD.PILSETA != NEW.PILSETA THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'PILSETA', NEW.ID, 'u', OLD.PILSETA, NEW.PILSETA, NOW() ); END IF; IF OLD.ADRESE != NEW.ADRESE THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'ADRESE', NEW.ID, 'u', OLD.ADRESE, NEW.ADRESE, NOW() ); END IF; IF OLD.PASTA_INDEKSS != NEW.PASTA_INDEKSS THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'PASTA_INDEKSS', NEW.ID, 'u', OLD.PASTA_INDEKSS, NEW.PASTA_INDEKSS, NOW() ); END IF; IF OLD.PHONE != NEW.PHONE THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'PHONE', NEW.ID, 'u', OLD.PHONE, NEW.PHONE, NOW() ); END IF; IF OLD.FAX != NEW.FAX THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'FAX', NEW.ID, 'u', OLD.FAX, NEW.FAX, NOW() ); END IF; IF OLD.VADITAJS != NEW.VADITAJS THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'VADITAJS', NEW.ID, 'u', OLD.VADITAJS, NEW.VADITAJS, NOW() ); END IF; IF OLD.vaditaja_dzimums != NEW.vaditaja_dzimums THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'vaditaja_dzimums', NEW.ID, 'u', OLD.vaditaja_dzimums, NEW.vaditaja_dzimums, NOW() ); END IF; IF OLD.LABOTS != NEW.LABOTS THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'LABOTS', NEW.ID, 'u', OLD.LABOTS, NEW.LABOTS, NOW() ); END IF; IF OLD.LABOJIS != NEW.LABOJIS THEN INSERT INTO table_log ( tlog_user_id, tlog_table_name, tlog_column_name, tlog_row_id, tlog_action, tlog_old_val, tlog_new_val, tlog_time ) VALUES ( @global_user_id, 'asociacija', 'LABOJIS', NEW.ID, 'u', OLD.LABOJIS, NEW.LABOJIS, NOW() ); END IF; END; $$ DELIMITER ;
×
×
  • Create New...