Jump to content
php.lv forumi

2easy

Reģistrētie lietotāji
  • Posts

    1,980
  • Joined

  • Last visited

Everything posted by 2easy

  1. AS jau tas pats JS vien ir (vismaz agrāk pirms AS3 tā bija). kr4 abi ir ECMAScript, tb balstās uz ECMA-262 standartu http://www.ecma-international.org/publications/standards/Ecma-262.htm tāpēc, iespējams, šīs js funkcijas 1:1 var izmantot arī iekš AS function easyCrypt(s, iSalt, iPepper) { var s2 = String.fromCharCode(iSalt) + String.fromCharCode(iPepper); for (var i = 0; i < s.length; i++) { iSalt += iPepper++; s2 += String.fromCharCode((s.charCodeAt(i) + iSalt) % 256); } return s2; } function easyDecrypt(s) { var iSalt = s.charCodeAt(0); var iPepper = s.charCodeAt(1); var c, s2 = ""; s = s.substr(2); for (var i = 0; i < s.length; i++) { iSalt += iPepper++; c = (s.charCodeAt(i) - iSalt) % 256; s2 += String.fromCharCode(c < 0 ? c + 256 : c); } return s2; } function rand(iMin, iMax) {return iMin + Math.floor(Math.random() * (iMax - iMin + 1));}
  2. ja tev vajag tikai muļķu drošu sistēmu (lai pa http ceļo viegli nošifrēts vārds), taču ir ok, ja dekompilētāji un kripteri to var easy uzlauzt, tad kā salt var izmantot skaitli: $iSalt = rand(1, 255); katram vārda baitam pieskaiti šo sāli pēc moduļa 256 un iegūsi citu baitu: for ($i = 0; $i < strlen($sVards); $i++) $sVards[$i] = chr((ord($sVards[$i]) + $iSalt) % 256); līdzīgi vārdu atkodē iekš tā FLEX tikai tur šo sāli atņem no katra baita, un beigās iegūst sākotnējo vārdu. nobīde/aizvietošana laikam bija viens no pašiem vnkāršākajiem kriptogrāfijas veidiem EDIT: uzlabojums iepriekšējam algoritmam: lai mazliet sarežģītu dekriptēšanas darbu, katru nākamo baitu var pārveidot ar mazliet citu sāli - lielāku/mazāku nekā iepriekšējo, izmantojot aritmētisko vai ģeometrisko progresiju. tad nevarēs tā vnkārši apskatīt 256 variantus, kur viegli būtu redzams sākotnējais vārds // $s - source string // $iSalt - byte shift // $iPepper - progresijas solis (priekš mazliet paātrinātas++ aritmētiskās progresijas :D) function easyCrypt($s, $iSalt, $iPepper) { $s2 = chr($iSalt) . chr($iPepper); for ($i = 0; $i < strlen($s); $i++) { $iSalt += $iPepper++; $s[$i] = chr((ord($s[$i]) + $iSalt) % 256); } return $s2 . $s; } function easyDecrypt($s) { $iSalt = ord($s[0]); $iPepper = ord($s[1]); $s = substr($s, 2); for ($i = 0; $i < strlen($s); $i++) { $iSalt += $iPepper++; $s[$i] = chr((ord($s[$i]) - $iSalt) % 256); } return $s; } imho, kamēr krakeri nezinās šo datu formātu un algoritmu, viņiem vieglāk būs dekompilēt tavu FLEX, lai saprastu, kas tur notiek, nekā no ārpuses mēģināt uzminēt, kā ir nošifrēts vārds :D EDIT2: un gan "sāls", gan "pipari" ir 1x baits. iesaku tos uzģenerēt šādi $iSalt = rand(1, 255); $iPepper = rand(1, 255);
  3. seko līdzi kodam. izvadi datus dažādās vietās ar echo. tā varēsi atrast, kur bija pareizi dati un kur sākas nepareizi. tas saucas debugošana....
  4. interesanti, kā netā ir jāmeklē, lai meklējot, kā inkludot failus, nevarētu atrast include
  5. kkā nemanīju, ka tas kods vsp kko darītu ar datu kodējumu. līdz ar to visticamāk, ka problēma ir datos, nevis kodā
  6. es zinu, kur Kavacky lieto to funkciju. droši vien noder, kodējot valsts pasūtījumus ;) // (: function doNothing() { return 1; } class Valsts { private $budzets, $aizdevums; function __construct($budzets) { $this->budzets = $budzets; } public function ievaktNodoklus() { // noslaukt tautu... @nodoklisParGaisaElposhanuUnParvietoshanos(); @kaaAriCinamiesArProblemamApliekotTasArNodokliem(); // ;) } public function izpilditValstsFunkcijas() { // infrastruktūras izveidošana/uzturēšana, efektīvas preču/pakalpojumu ražošanas veicināšana, izglītība, medicīna, policija, ugunsdzeseji, kultūra, ... if (rand(0, 9)) { // piekāst nodokļu maksātājus if (rand(0, 1)) { doNothing(); // <--------------------------- šeit!!! :D:D:D } else { while ($this->budzets > 0) { $this->iekamptPriekshSavasPartijas(); } $this->aiznemtiesNoStarptautiskajiemAizdevejiem(7000000000); while ($this->aizdevums > 0) { $this->iekamptPriekshSavasPartijas(); } } } else { // 10% varbūt tiek iztērēti arī kkam noderīgam @doSomethingUseful(); } } private function iekamptPriekshSavasPartijas() { if ($this->budzets > 0) { $this->budzets -= 100000000; } elseif ($this->aizdevums > 0) { $this->aizdevums -= 100000000; } } private function aiznemtiesNoStarptautiskajiemAizdevejiem($kreditaSumma) { $this->aizdevums = $kreditaSumma; } } $lv = new Valsts(4000000000); $lv->ievaktNodoklus(); $lv->izpilditValstsFunkcijas();
  7. 2easy

    hr

    redz kā sanāca: lai gan <hr /> semantiski ir vispareizākais tags priekš horizontālās svītras, taču tas nav ieteicams un praktiski to reti lieto :D:D:D ne vnm "pareizāk" ir arī labāk...
  8. 2easy

    hr

    ohh, waplets pirmais paspēja! ^^
  9. 2easy

    hr

    <hr /> vietā ieliec div tagu ar border un stilo, kā gribi. piemēram <div style="border-top: 1px dashed silver"></div> pieliekot margin: 5px 0 iegūsi vertikālu atstarpi starp apkārtējiem tekstiem
  10. 2easy

    Monitors

    ieposto te, es arī gribu zināt. nopietni!
  11. novēlu veiksmi un panākumus php apgūšanā ;)
  12. tad jau laikam jāizdala divi subselektu rezultāti un jāreizina ar 100 turpat iekš sql
  13. 2easy

    Monitors

    pamēģini tā: 352. 353. rindiņu izlabo uz </tr> </table>"; </div> no 329. rindiņas pārcel aiz 353. rindiņas tabulai ar tekstiem tgd vajadzētu būt vienā līmenī ar bildi ja vēl nav, tad paspēlējies ar <table style="margin-left: ...px"> vsp šādas izmaiņas veic & testē uz vietas, jo tomēr ir jāņem vērā arī apkārtējais html,css ir jāskatās konkrēti, kas ir izveidots... un jāveic debugošana, lai atrastu iemeslu, kāpēc nestrādā
  14. 2easy

    searchform

    varbūt ar margin-top to pogu var pabīdīt zemāk
  15. tas posts jau arī daļēji bija kā jociņš, jo negribēju piesieties/kritizēt tālāk, kā, piemēram, tagad: Kenneth Thompson neizgudroja ne C++, ne arī C, bet gan B (60-to gadu beigās) C izgudroja Dennis Ritchie (70-to gadu sākumā) C++ izgudroja Bjarne Stroustrup (80-to gadu sākumā) datoriķu jociņos ir daudz vērtīgu atziņu...
  16. mazliet no klasikas... http://en.wikiquote.org/wiki/Kenneth_Thompson
  17. tā funkcija tiešām ir pilnīga tādā šī vārda nozīmē kā "resna/korpulenta/uzblīdusi" jeb angliski bloated :P omg, kā tā var rakstīt! if(!empty($s)) { return true; } else { return false; } ja jau empty() izdod bool, tad to var uzreiz lietot return !empty($s); ja vajag pārbaudīt tikai stringu function hasStr($s) {return trim($s) != '';} 14x rindiņas vs 1x rindiņa ;) feel the difference? bet ja vajag vispārīgāku pārbaudi uz dažādiem datu tipiem, tad arī to var izdarīt ar 1x statement function hasVal($v) {return (bool) (is_string($v) ? trim($v) : $v);} // has value - checks if $v has value pieņemsim, ka šī ir mana funkcija šim topikam ;) test it... foreach (array(null, true, false, 0, 123, '', ' ', 'asdf', array()) as $v) echo (hasVal($v) ? 'true' : 'false') . '<br />'; /* false true false false true false false true false */ vsp par tādiem nosaukumiem kā "navTukss()" - tas ir kkādā lv mentalitātes stilā 4erez noliegumu noliegšanu. imho, labāk definēt daudzmaz konstruktīvi "irVertiba()" vai "navVertiba()" (choose atkarībā no biežākā usage)
  18. lai taisītu weblapas nav obligāti jāprot programmēt. vnk jāprot izmantot skriptus :D:D:D
  19. tev skola ir Valsts Zemes Dienestā? echo round(mysql_num_rows(mysql_query('SELECT COUNT(*) AS Cnt FROM IpasniekaVesture WHERE sākuma-datums BETWEEN DatumsNo AND DatumsLidz OR beigu-datums BETWEEN DatumsNo AND DatumsLidz GROUP BY ZemesID HAVING Cnt > 1')) / mysql_num_rows(mysql_query('SELECT COUNT(*) FROM IpasniekaVesture WHERE sākuma-datums BETWEEN DatumsNo AND DatumsLidz OR beigu-datums BETWEEN DatumsNo AND DatumsLidz GROUP BY ZemesID')) * 100);
  20. viņi salabos... ja problēma ir viņu galā vai arī vari viņiem uzzvanīt rīt darba laikā un uzprasīt pats. priekš tam taču ir domāts supports
  21. Java, varbūt vēl pa 100 rindiņām izstiepsi to kodu? echo preg_replace('/[a-z0-9-_]+\/$/i', '', '/mape1/apaksmape1/vel_viena_mape/'); // /mape1/apaksmape1/
  22. 2easy

    headeris

    nodzēs height: 220px; pievieno margin-bottom: 40px; neticu, ka ir tik vnkārši. drīzāk gribas domāt, ka neesmu sapratis problēmu :D:D:D
  23. man arī tā liekas, taču iekš attiecīgā mysql utf8 latviešu collation "a" un "ā" ir vienāds svars => tie netiek šķiroti, tāpēc visu nosaka nākamais burts
×
×
  • Create New...