Jump to content
php.lv forumi

Valcha

Reģistrētie lietotāji
  • Posts

    141
  • Joined

  • Last visited

Posts posted by Valcha

  1. Sveiki! Vai kāds var paskaidrot - vai zombētie datori (laikam tie ir tie ļaunie), kas meklē caurās vietas lapā - XSS, SQL injekcijas utt., pie katra GET-a parasti veido jaunu sessiju, vai turpina uz tās pašas?

     

    Ir doma uzrakstīt universālu skriptu, kas viņu nobloķē pēc n sliktiem GET-iem noteiktā laika posmā. Bet domāju bloku realizēt nevis uz IP adresi, bet gan sesijā.

    Negribas bloķēt IP adresi, jo tā var būt necaurspīdīgs proxy.

  2. Sveiki! Esmu sastapies ar problēmu, ka kā tikko izmantoju IFRAME ar designMode, tā iframes body vairs nedarbojas on.. eventi.

    Tiku tik tālu, ka onLoad varu palaist kaut kā ar settimeout, radot delay. Tad onLoad nostrādā.

    Bet uz onPaste nesanāk nekādi.. Kur te varētu būt triks? Un kāpēc vispār pie designmode on eventi negrib strādāt? Pārbaudīju - iframe bez visām tām modēm darbojas kā nākas.

    +onPaste laikam darbojas tikai uz FF.

     

    Papildināts:

    Tā kā neviena ieteikuma nebija, pagaidām šo problēmu esmu atrisinājis, nevis skatoties onPaste, bet gan ar setTimeot ik pēc pussekundes rekursīvi pārbaudot, vai lauka izmērs nav >10 kā lauka izmērs pirms pussekundes. Un, ja ir - daru to pašu, ko būtu darījis, ja uzzinātu onPaste. Risinājums varbūt nav tik revolucionārs, kā onPaste krosplatformās, bet tomēr darbojas.

    Vajadzīgs bija tādēļ, lai visu lieko HTML uzreiz no IFRAME dzēstu ārā, kas arī sekmīgi sanāk.

  3. Ehh, esmu iesācis taisīt savu WYSIWYG post formu, bet nevaru izdarīt nekādi divas lietas:

    1) Panākt, lai iekš designMode=on dokumenta bildes nevarētu resaizot. It kā stundām meklējot pa netu atradu execCommand enableObjectResizing, bet tas darbojas tikai uz Firefox, pie tam nenojaušu, vai uz visām versijām.

     

    2) Daru tā:

    var frame= document.getElementById('frameId');

    // focus prieks FF

    frame.contentWindow.focus();

    frame.contentWindow.document.body.innerHTML = frame.contentWindow.document.body.innerHTML+"<img src='../aa.jpg'>";

     

    , bet uz firefox negrib uz body fokusēt aiz aizpildītā teksta. Man pēc katra pogas spiediena uz FF kursors mirgo body priekšā. Varbūt ir iespēja, kā dabūt kursoru uz body beigām bez visa teksta for-ā ciklēšanas?

     

     

    Ehh, žēl, ka par designMode nav pamatīgas dokumentācijas netā. Tā vien varētu domāt, ka kāds to nemaz negrib.

  4. Cik palasījos googlē, sāk šķist, ka formas elementos nekādi nevarēs attēlot bildītes.

    Vai tiešām ir tā, ka tādos gadījumos veido Div elementus, kuri izskatās kā forma un kuros var visu attēlot? Mani mazliet piebesī tas, ka tad visa lauku verifikācija uz JS jāpārtaisa būs..

     

    Viss tas vajadzīgs ir, jo gribu smailus smuki ievietot textare-ā. Izmeklējos jau stundu skriptus, piemērus, idejas par bildēm un smailiem iekš textarea un nekā jēdzīga nav.

  5. Varbūt īsti nav vieta pie skriptiem šim jautājumam, bet citur vietu neatradu (offtopikā var atbildi arī nesagaidīt), bet varbūt varam iedomāties, ka ar skripta (rindiņu) palīdzību šo problēmu pēc tam atrisināšu.

     

    Tātad man ir tāda problēma, ka manā lapā ikdienas ienāk ap 400 (citreiz nāk arī no .4 un .5 un pat ap 1000 dienā var būt) IP adreses 74.6.* dažādos linkos un tālāk par to vienu linku neiet. Cik man izskatās, tad mājaslapu statistikas lapas kā gmetrix utt. šādus neskaita (man no statistikas lapas atšķiras cipars apmēram par tiem pašiem 74.6.*), tas vēl vairāk pastiprināja manas aizdomas par to, ka šie hosti ir feikani. Esmu dzirdējis, ka var pasūtīt mākslīgu statistikas uzdzīšanu, bet pats to nedaru, iespējams, ka kāds cits man "dāvina" šādu lietu jau vairākus mēnešus.

    Varbūt kādam ir zināma kāda univsersāla metode, kā noteikt feikainas IP adreses. Ir ideja tās bloķēt pavisam pieejai lapai, jo reizēm tie feiki nāk vairāki minūtē un pīķa stundās tas var gana nobremzēt lapu..

     

    Mazliet šaubos arī par to, vai tas viss nav kāds google robots vai kas tml (bet kāpēc tad no dažādām adresēm reizē?).

    Tātad kādas ir jūsu domas par šādiem mistiskiem viesiem? Vai ir kas tāds arī novērots un kā pret to cīnīties?

    Ceru, ka neizplūdu par garu, tā ir, ka raksta pa nakts vidu :)

  6. Ehh, izmeklēju googli, manuāļus, bet vai nu būšu palaidis garām, vai vienkārši neatrodu..

    Tātad - kā ar mod_rewrite izmantot GET-ā jautājumzīmi?

     

    Es pieprasu http://lapa.lv/mod_mape/?vel_mainigais=mainigais

     

    Un mēģinu adresu lasīt šādi:

    RewriteRule ^([a-z]+)/?vel_mainigais=([a-z]+)$ /index.php?id=$1&vel_mainigais=$2 [L]

     

    Bet, kad mēģinu šādi prasīt bez jautājumzīmes: http://lapa.lv/mod_mape/vel_mainigais=mainigais

    un ar mod arī ņemu bez: RewriteRule ^([a-z]+)/vel_mainigais=([a-z]+)$ /index.php?id=$1&vel_mainigais=$2 [L]

    , tad viss notiek ok.

    Bet tā jau nebūtu smuki. Gribēju dabūt izmantojamu jautājumzīmi GET-ā, bet nesanāk. Vai vispār to var izdarīt? Skatos, lielajiem portāliem it kā darbojas.

    Sorry, nu nekādi nesanāk izdomāt.

  7. Sveiki! Man nepieciešams atlasīt ierakstus, kuru kolonna col1 vērtība var sākties ar jebkuriem 2 cipariem no saraksta.

    Gribēju rakstīt kaut kā tā:

     

    select col2,col3 from tabula where col1 like in ('10%','20%').

     

    Diemžēl nesanāk. Vai vispār to var kaut kā izdarīt? Zinu, ka var jau rakstīt where (col1='10%' or col1='20%'), bet, pirmkārt, man tā jau atlase uz pusdienu (šī, protams, ir tikai daļa no mega vaicājuma), negribu sarežģīt, otrkārt, arī nesmuki.

    Nu, varbūt kāds ir ko līdzīgu darījis? Jau pusstundu meklēju gogli, eksperimentēju utt.

  8. Delfīn, citi:

    Paskatījos netā tādus softus kā Turck MMCache, eAccelerator utt.

    Tie visi kešo(varbūt arī kompilē kešam (?)) un tādā veidā dod performanci.

    Bet es nesaprotu - vai tie kešo uzģenerēto HTML rezultātu vai arī pašu PHP kodu kaut kā sagatavo?

     

    Jo HTML kešošana man neder, tā kā lapa randomā mainā ik uz klikšķa. Man vajag tieši PHP izpildi paātrināt. Nav jau tā, ka velkas, bet 400KB kods ielādējas no 0.5-1.5 sec, atkarībā no apmeklējuma (dienā līdz 1000 personu). Gribējās žiperīgāku. Aha - un visas funkcijas glabāju dažos failos un defaultā inklūdoju, ir index, kas to vajadzīgās funkcijas kā kontrolieris izsauc.

    Negribēju veidot atsevišķu topiku tādam jautājumam..

  9. Sveiki! Vai kāds patiešām strlen vietā izmanto isset funkciju, lai noteiktu, vai mainīgais nav īsāks/garāks par noteikto?

     

    Bet jautājums par citu - vai performancei isset arī ir efektīgāk izmantot arī stringa garuma precīzai noteikšanai. Šaubos tādēļ, ka tad ir jāveic 2 isset pārbaudes - vai ir pēdējais simbols un, vai nav nākamais.

     

    // vai strings ir vienaads ar 10

    Tātad if (strlen($mainigais)[10]) {ir ok }

    vietaa darām tā:

    if (isset ($mainigais[9]) and !isset($mainigais[10]))

     

    Vispār man sāk šķist, ka tas viss ir pārākā dzīves sarežģīšana - kas būs, kads cits tādu kodu ieraudzīs? :) Vai kāds vispār tik mistiski dara? Vismaz pie mazāks/lielāks?

    Paskaidrojumam, kādēļ sāku ķēpāties ar tādām lietām - sāku kodu optimizēt sākot no cikliem un turpinot ar visu iespējamo.

  10. Sveiki! Tātad man ir tabula, kurā ieraksti pēc koda var atkārtoties. Man pie gadījuma, ja atrodas vairāk kā 1 ieraksts, attiecīgajam kodam ir jāatlasa tikai pēdējā vērtība (lielākais id).

    Problēma bija tāda, ka nevarēju izmantot order by subkverijā, jo sāk klaigāt par right parenthesis.

     

    Tabulas piemērs:

    id | kods | vel_dati

     

    1|k1|aaa

    2|k1|bbb

    3|k2|ccc

    4|k3|ddd

     

    Atlases rezultātam vajadzētu būt

    2|k1|bbb

    3|k2|ccc

    4|k3|ddd

     

    Mēģināju atlasīt sekojoši:

    SELECT a.kods, count(a.kods),

    (select b.id from tabula b where b.kods=a.kods and rownum=1 order by b.id desc) id

    FROM tabula a

    group by a.kods

    order by kods desc

     

    Neļauj izmantot order by subkverijā, lai pielasītu pēdējo vērtību.

    Ja nu kāds vēlas padalīties DB zināšanās un palīdzēt ar atlasi, paldies.

  11. Ehh, paldies par atbildēm.

    Tā kā man galīgi nebija laika gaidīt, izdarīju sekojoši:

    1. Izeksportēju dampu

    2. Dampā visus nesmukos simbolus ar php palīdzību norepleisoju pret pareizajiem

    3. Krievu tekstus, kuri bija kodā ar entitiydecode >> UTF8 padarīju par korektiem.

    4. Noalteroju visas tabulas un db uz uft8.

    5. Ieimportēju UTF8 datus datubāzē.

    Viss šansē. Paldies, biju gan domājis, ka vāres kā vienkāršāk - nekā :)

    Ak jā - pie DB konekcijas tagad lieku SET NAMES UTF-8.

  12. Sveiki. Man ir viena datubāze, kurā aiz senas muļķības biju saputrojis kodējumus.

    Tātad:

    - datubāzes tabulas ir latin1,

    - lapas kodējums, no kuras postoju un ierakstīju datus - 1257.

    Tagad gribēju pāriet uz utf8 gan db, gan lapā. Tabulu nokonvertēt nav problēmu ar ALTER, bet, pie datu pārmigrēšanas, pavisam sakropļo tekstu.

     

    Latin1 tabulās man teksti izskatās šādi: "Kâ vçtrasputna spârni". Tai pašā laikā php vai kas tur ir vienmēr bijis tik gudrs, ka pats izkonvertē uz ekrāna, kā vajag.

     

    Kā es varētu loģiski pāriet uz uft-8. Zinu, ka viens no galējiem variantiem ir kaut vai paņemt un ar replace nomainīt dump-ā visus kropļotos burtus. Bet varbūt var kā citādi?

  13. Sveiki! Vēlējos noskaidrot, vai patiešām nekur LV nav un nebūs kursi profesionālā (profesionāļiem) PHP programmēšanā, kuru rezultātā varētu dabūt sertifikātu?

    Varbūt ir kādi tālmācības kursi, kuros var attālināti to nokārtot? Zinu, ka par šo ir jau jautāts, bet varbūt kas LV ir mainījies. Googlē neko neatradu.

  14. Delfins:

    Jā, es arī gribēju ņemt vispirms Tavu ideju, bet ieraudzīju objektu simboliku => un nolēmu, ka tā kā objektus šai projektā neizmantoju, nemežģīt savu prātu. Man šobrīd ir tā, ka steidzos pabeigt savu programmējumu, ka tik ātrāk, jo nu jau kods ievilcies uz gandrīz gadu pa vakariem..

    Katrā ziņā ļoti novērtēju to, ka dalies ar savu pieredzi. Ne tikai manā konrētajā slejā, bet vispār php.lv. Visai bieži no Tavām un Bubu idejām smeļos virzienus.. :) Tā turpināt, meistari! :))

×
×
  • Create New...