Jump to content
php.lv forumi

Roze

Administratori
  • Posts

    1,561
  • Joined

  • Last visited

Everything posted by Roze

  1. kapēc gan? Ja šāds logs nekalpo par kaut kādu datu restorēšanai (undo) un iepriekšēju darbību atcelšanu tad tak struktūru var pielāgot pilnīgi visam vienādu. Proti kaut kāds darbības identifikators / jūzeris kad veikta un pārējos datus jau var sabakāt vienā unikālā laukā (kaut vai seralizējot). Ja jūzeri nav drausmīgi daudz (sistēmai nav jāņemas ar 1000 logfailiem) tad ātrāk manuprāt ir darboties failsistēmas līmenī, vēl jo vairāk ja pēcāk nav nepieciešami kaut kādi detalizēti izvilkumi. Ja tas ir NT serveris (ne workstacija) tad NTFSam ir vairāklīmeņu failpermisijas, kam read, kam write utt. Ja uztraukums ir par logfailu lasīšanu no weba, var tak logfailus turēt ārpus webroota! Un administratīvu pieeju organizēt kaut kā savādāk. Lai arī IIS ir pietiekami normālas tiesību menedžēšanas iespējas. Galugalā ja patīk .htaccess kapēc nelietot Apache par webserveri? Ja php nepieciešama .asp procesēšana IIS var strādāt kā backends un apache kā transparents proxy redirektēt .asp requestus tam.
  2. Jautājums ir analogs: Kurs ir piemērotākais auto lai es aizbrauktu līdz veikalam?Kam patīk japāņi, kam amerikāni kam vācieši. Kam gribās komfortu, kam apgriezienus. Nav viennozīmīgas atbildes. Distributīvi ir vairāk vai mazāk gaumes jautājums un ir jaatrod kompromis starp userfriendly un fckin fast. Lai gan principaa jebkuru var novest līdz top kondīcijai un tikpat labi pat ātrakais distributīvs var tikt sačakerēts līdz nemaņai. RH (personīgi lietoju RH 7.3, 9.0, AS 3 un nesen tapa arī pirmais Advanced Server 4) vai SuSe produktus parasti izvēlas labā hardware atbalsta dēļ. Bet minētais salīdzinājums ar Fedora un Slackware varētu būt kaut kas aļa WinXP pret DOS (šeit nedomāju funlcionalitāti un iespējas) - proti pirmais kā mainly desktop sistēma noklusētā variantā ar visām iespējāmām lietām kas lietotājam varētu ievajadzēties, turpretī Slackwarē jau tev pašam vairāk vai mazāk jāzin kas un kā notiksies. Ja tas ir tavs pirmais mēģinājums likt linux tad labāk izvēlies Fedora. Lai arī eksistē sāpju pilnais ceļš sākt ar otro variantu tādējādi iepazīstot OS krietni smalkāk tas pie pavājākiem nerviem / zināšanu trūkuma var nošķebināt un zaudēt visu vēlmi jelkad saistīties ar šo izstrādājumu :) Lai gan ja jau reiz tā ir kapēc vispār tiek uzdoti kaut kādi jautājumi? Fleima un distrowars cienīgs izsauciens..
  3. mysqli funkcijas ir tikai php5 (pie kam tas vairāk saistīts ar uzlabotu MySQL API un funkcionalitāti ne tikai ar autorizāciju) - pie kam vienlaicīgi var nokompilēt (uz windozes ganjauka eneiblot ekstensijas) /lietot gan mysql gan mysqli funkcijas ja migree no 3.x uz 4.0.x tad probleemaam nevajadzeetu buut pilniigi nekaadaam. (ja nu tomeer tad REPAIR TABLE tabula; vienmeer paliidzees safixot līdz vajadzīgajai kondiicijai) Ja migree uz 4.1 tad php vienkaarshi jaakompilee ar aareejo mysql clientu (liidzi naakoshais 3.x nederees). Tachu parolju sheema/kripteeshana var palikt arii vecaa jo savietojamiibas noluukos var izmantot arii OLD_PASSWORD http://dev.mysql.com/doc/mysql/en/password-hashing.html
  4. Ganjauka vecs PHP. It's also worth noting that when using the GLOB_BRACE flag in any version of PHP prior to 4.3.4, PHP will crash if no matches are found. Upgrade!
  5. Lieto JOINus: SELECT tabula1.id, tabula1.lauks1, tabula1.lauks3, tabula1.lauks5, tabula1.lauks9, tabula2.nosaukums, tabula3.nosaukums, tabula4.nosaukums FROM tabula1, tabula2, tabula4 LEFT JOIN tabula3 ON (tabula1.lauks6=tabula3.id) WHERE tabula1.lauks4=tabula2.id AND tabula1.lauks7 = tabula4.id ORDER BY tabula1.lauks1 ASC Tādējādi no tabula1 tiks atlasīti visi lauki un gadijumā ja sakrit''is arī ar tabula3 id tad tā tiks pielasīta.
  6. Roze

    Iesakiet provider

    Piezvani Telegrupai pēc pārklājuma sanāk http://www.telegrupa.lv/index.php?option=c...id=31&Itemid=50 Kādreiz (līdz labākam piedāvājumam) no viņiem (pareizāk Vides Kominukācijām ko Telegrupa pēcāk pārņēma) lietoju 2Mbit. īpaši sūdzēties nevarēja. p.s. un kas gan var aizliegt likt kabeļa galā kādu vien tīkla iekārtu es gribu? Jebšu kur ir atšķirība starp PC un routeri, wireles accespointu jebšu tīkla printeri? Iespringt var varbūt gadījumos ja tu sāc kaut ko provaidēt arī savam kaimiņam, lai gan wirelesa gadijumā provaideris ar neko īsti nevar padarīt.. Nu kaimiņš pieslēdzās un ko es tur varu padarīt?! :)
  7. Manuprāt pirmais variants ir visprātīgākais, jo tādējādi tu vienmēr zini kurā tabulā glabājas lietotāja dati, kur pretēji otrajā - tev nāksies pārlasīt visas tabulas. Trešais ir ķēpigāks no tā viedokļa ka tev papildus jāskatās vai piemēram C ir starp A-F vai kur citur.
  8. draugiem vairs neizmanto rdbms vēstuļu glabāšanai / apstrādei.. Bet kas attiecas uz datiem istenībā dabūt datus tabulā un tos noselectēt ir tikai viena puse, pavisam citas galvas sāpes sākas, kad jāsāk domāt par konkurentiem insertiem / updeitiem. šeit ir viens no iemesliem kapēc dalīšana pa tabulām (katram lietotājam pa vienai protams pa traku, taču kaut kādus apgabalus izveidot var) ir efektīvāka. Jo vismaz MySQL MyISAMi tabulu gadijumā tādējādi netiek nolockota pilnīgi visi dati bet gan tikai daļa. Protams var lietot InnoDB ar row-level lockingu, bet MyISAMi ir ātrāki SELECTos. Piekam izpildot vienreiz vienu kveriju un paskatoties tā izpildes laiku ir kaut kas viens, bet palaižot konkurentus 100, kas pilnīgi cits..
  9. Nu var mēģināt manuprāt arī kaut kā šādi (atradīs kaut ko vienmēr): Pieņemsim ka jāatrod tuvākais '5': SELECT cipars FROM tabula ORDER BY ABS(cipars - 5) ASC LIMIT 1; Attiecīgi ja ieliksi LIMIT 2 tad atradīs divus tuvākos ciparus (protams var sanākt ka divi tuvākie uz vienu pusi (t.i. vai nu abi lielāki vai mazāki)).
  10. Vispār jau par failu (bilžu) storēšanu failsistēma vs DB ir pāris reizes forumā jau apspriests: http://php.lv/f/index.php?showtopic=1530 Īsumā: 1) Viennozīmigi failsistēma bet ar indeksu DB 2) Viena mape līdz 10K bildēm pēc tam jau var sākt rasties problēmas vai nu ar pašu failsistēmu (vairāk vai mazāk gan izvilks arī līdz pāri ljimoniem failu (ja nepietrūks inodes)) vai tīri ar failu menedžmentu (grūti nolasīt direktoriju struktūru utt). 3) Protams ka ātrāk viss notiek ja datus sadala pa vairākām db / tabulām / serveriem, taču jāskatās kādā veidā dati ir saistīti un kā tos nepieciešams attēlot.
  11. Protams tā arī paredzēts un domāts.. BinaryPHP is a PHP To C++ converter which will convert PHP scripts into C++ equivalents ready to be compiled using any ANSI compiler
  12. Vispār jau ieksh binaryphp nekas nav jakompilee convert.php janoraada tikai cli php atrašanas vieta un jakonvertē pats .php fails. ./convert.php --if examples/helloworld.php --of yey -v 1: #include <iostream> 2: using namespace std; 3: #include "php_var.hpp" 4: int main(int argc, char** argv) 5: { 6: cout << "Hello, World!"; 7: } 8: Compiling: g++ -o yey yey.cpp php_var.lo -g tikai tur jaaskatās vai visas php kodā izmantotās funkcijas ir noportētas/pārrakstīts uz analogu.
  13. Vai uz tās kastes kur griežas php ir Latnet pieslēgums? Proti provaideri smtp servera pakalpojums lielākoties piedāvā tikai saviem klientiem, līdz ar to atkarībā no tā jāmaina SMTP settings, piemēram apollo tas ir mail.apollo.lv, telia mail.telia.lv utt
  14. Roze

    url rewrite

    Man ir aizdomas vai nu ir kaut kāds rewrite erors vai arī iestājas loops (t.i. webserveris redirectē pats uz sevi) Es tavā vietā iesākumā ieliktu šādu ruli: RewriteEngine On RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|jpeg) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?dir=$1 [QSA,L] Un tad attiecīgi 'dir' mainīgo explodēt pa '/' un sadalīt pa mainīgajiem ($lang, $page, $subpage) un veikt analīzi jau php galā.
  15. Roze

    url rewrite

    Vispār jau der pielikt RewriteCond %{REQUEST_URI} !\.(css|js|jpg|gif|jpeg) t.i. bildēm u.c. figņām rewrite ruli neizmantot. taču attiecigi bildes vairs nevar likt relatīvi proti src="img/bla.jpg" vietā jāliek src="/img/bla.jpg" kur attiecīgi /img/ ir direktorijas attiecībā pret webrootu.
  16. Roze

    GUESTBOOK

    Viss ģeniālais ir vienkārš.. jebšu otrādi :)
  17. Vispār jau php var darbināt arī uz IIS. http://lv.php.net/manual/en/install.window...indows.iis.iis4 Kādreiz uz IIS4 darbināju kā isapi moduli un nekādu problēmu nebija. Bet tā var jau izdarīt arī tā. Palaist teiksim apache ar php uz 80 porta un IIS ar asp uz 81. Tad apachi nokonfigurēt kā proxi izmantojot mod_proxy iespējas http://httpd.apache.org/docs-2.0/en/mod/mod_proxy.html T.i. tajās vietās kur nepieciešams (procēsēt asp) apache veic pieprasījumu IISam un atgriež klientam lapu. Principā pietiek kaut vai ar: ProxyPass /iis/ http://localhost:81/ ProxyPassReverse /iis/ http://localhost:81/ Proti tad kad uz parastā apaches servera tiks pieprasīta direktorija /iis/ tad visi requesti tiek redirektēti uz IIS. Kaut kā tā. Update: Vispār var šķiet pat advancētāk un mēģināt šādi: ProxyPass *.asp http://localhost:81/ t.i. visas .asp lapas tiek rekvestotas uz IIS serverim ne tikai konkrēta direktorija
  18. Roze

    Delfi

    Hehe jautājums ir par Delphi (ne velti offtopikā). 2) Nu ieliec Memo nevis labeli 3) Nu tur jāskatās var mēģināt atrast kādu extendētu komponenti kurai it kautvai UTF atbalsts. Mani 2vi centi.. Ar delphi var taisīt arī ĻOTI advancētas progas :)
  19. Kā gan JS var zināt kādu lietotāju un paroli klients ievadīs???? Proti kā gan tu vari skriptā uzģenerēt formas md5 hašu no paroles un lietotāja usernami ja nav zināms kurš no 100 useriem logojas?! Līdz ar to šis te, piedodiet man, ir galīgi garām, jebšu viena lietotāja loginforma Ar JS var veikt pārbaudi vai formā ir aizpildīti kaut kādi lauki vispār, pie kam korekti manuprāt ir mest vienu alertu nevis uz katru tukšo lauku. Piemēram: <script type="text/javascript"> function checkFields() { missinginfo = ""; if (document.getElementById('from_name').value == "") { missinginfo += "\n - Tavs vārds"; } if (document.getElementById('from_mail').value == "") { missinginfo += "\n - Tavs e-pasts"; } if (missinginfo != "") { missinginfo ="Jūs neaizpildījāt šādus laukus:\n__________________________________\n" + missinginfo + "\n__________________________________\n" + "Lūdzu ievadiet nepieciešamo informāciju un apstipriniet!"; alert(missinginfo); return false; } else return true; } </script> <form onSubmit="return checkFields();"> <input id="from_name" name="from_name" /> <input id="from_mail" name="from_mail" /> Piekam lūgšu ja reiz kādam tiek mēģināts palīdzēt, tad instrukcijas/kodu tomēr pacensties raksīt pareizi un ne ar komentāriem:
  20. Hehe dienas komentārs :) Bet nu sesiju (php) webserveris atpazīst tikai vai nu no sesijas id kas glabājas pie lietotāja cookijā vai arī tiek padots kā url parametrs.
  21. Tas nav īsti bugs bet gan dokumentācijas nepilnība attiecībā uz ini_set() funkciju http://bugs.php.net/bug.php?id=18403 Pamēģini nomainīt iekš php.ini vai arī no Apaches configa ar php_flag
  22. Roze

    mail()

    Šis jau ir gana labi, jo nozīmē, ka mails tiek izsūtīts tikai to atgriež latneta mailserveris. Vai vari iepeistot tā maila saturu? Šis gan manuprāt tiek ņemts vērā tikai uz windows strādājošam php. Un tad ar šķiet ka noteikti vajag kaut kādu Mail Transpor Agentu / Servisu darbināt. Bet nu tā jau vislabāk der provaidera smtp serveris.
  23. Atbildēšu apgrieztā secībā, jo tā vieglāk: Ja ir aizdomas / šaubas par paša koda drošību (teiksim tirgojamam .php) tad vispār pieņemts un izmantots risinājums ir .php kodu vienkārši kriptēt / encodēt / "kompilēt".Populārākais encoder / decoder produkts ir Zend Encoder http://www.zend.com/store/products/zend-encoder.php un attiecīgi Zend Optimizer http://www.zend.com/store/products/zend-optimizer.php . (ir arī citi piemēram no iOncube http://www.ioncube.com/sa_encoder.php ) Zend Optimizer ir bezmaksas un obligāti nepieciešams uz webservera kur uzlikti encodētie php skripti, savukārt Encoder ir maksas taču izmēģinājumam ir Trial versija. šādi php skripti nav analizējami un maināmi pat fiziskas piekļuves gadijumā (tas ir ja kāds tiek pie webroot direktorijas vai teiksim ir salūzis webserveris un vairs nepārsē php). Jauki ir tas ka php strādā arī miksēta veidā. Proti gan encodētajos failus iespējams includēt normālas sources failus gan arī otrādi. Tādējādi klientam var atstāt maināmu sourci konfigurācijas failam, bet ja negribi rādīt savu CMS kodu to vienkārši encodē. Šķiet, ka nekas jēdzīgs nav (un manuprāt nav arī īsti nevienā programmēšanas valodā un programmētājam / koderim tas pagaidām jāsaprot pašam). Protams, ir dažādi webserveru noslodzes testēšanas rīki (kaut vai tas pats 'ab' kas nāk līdzi Apache), bet tas jau ir paša gala izvada ātrdarbības tests, līdz ar to nenosaka kura koda daļa / algoritms strādā lēnu. Tai pašā laikā ja arī ir iespējams piefiksēt cik konkrētā funkcija / cikls / operācija aizņem procesora laiku / atmiņu, tad nav iespējas softiskā veidā pateikt vai šis koda gabals ir optimāls un panākta maksimāla ātrdarbība (kad programmas sāks pašas uzlabot sevi tad šķiet sāksies cilvēces noriets :) ). Ir zināmi daži fakti un paņēmieni kas ātrdarbību uzlabo vai tieši pretēji pasliktina taču nav rīka, kā vien paša sktiptotāja rociņas un tas kas galvā, lai to ieraudzītu. Piekam lai saprastu vai tas ir ātri vai lēni ir ar kaut ko jāsalīdzina, taču tākā sistēmas uz kurām griežas paši procesi, kā arī skripti ir tik dažādi tad principā visu nosaka izjūta un reāla darbība.
  24. Vispār jau tāda versija ir iznākusi un var lietot ON DUPLICATE KEY http://dev.mysql.com/doc/mysql/en/insert.html
  25. Roze

    radio pogas

    Webs tomēr ir viena jauka padarīšana ja jau ir piemērs tad var apskatīt arī sourci ne? :) Bet nu katru grupu tev vienkārši jānosauc savā nosaukumā un tas arī viss.
×
×
  • Create New...