Jump to content
php.lv forumi

Venom

Moderatori
  • Posts

    1,918
  • Joined

  • Last visited

Posts posted by Venom

  1. a vai ta [email protected] vēl strādā?

    tur nav jābūt nikneimam?

     

    NB: kad es uzturēju sms sūtītāju no mailiem, kādu laiku sekoju līdzi kāds numurs kam pieder, bet beigu beigās vienkārši "parunājos" ar abiem socketu līmenī - kurš pieņēma, tam arī sūtīju, ja abi neņēma - tad sorry, unknown systems, perhaps amigo.

  2. jā, jā IR tik dziļa ;)

     

    Kas rāda lapu Page Expired? Pārlūks. Kāpēc? Ka jau aizmiris datus, ko ir saņēmis sērčam (droši vien no POST)

     

    vēl var palīdzēt

    session_cache_limiter('private'); pirms session_start();

  3. visvienkāršākais, izvadīt mēneša datumus bez nedēļu u.c. sadalījumu, e.g.

    SELECT DAYOFMONTH(reserve_start) as `dom_s`,DAYOFMONTH(reserve_end) as `dom_e` FROM preces WHERE MONTH(reserved)=MONTH(NOW());

     

    $rd=array();
    $tmp=date('j')+1;
    while(--$tmp)
    $rd[$tmp]=$tmp;
    ksort($tmp);
    while ... mysql_fetch_assoc ...
    {
    $tmp=$m->f['dom_e']+1;
    $m->f['dom_s']-=1;
    while(--$tmp>$m->f['dom_s'])
     $rd[$tmp]='<b>'.$tmp.'</b>';
    }

    echo implode(' | ',$rd);

  4. samazināt līdz noņemt kešu ar

    header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

    header('Pragma: no-cache');

    (sērčlapā, pirms tiek izvadīt kaut kas cits)

     

    NB: $_REQUEST ir diezgan paslikta padarīšana, dažreiz vajadzīgs, bet, domājams ne šaja gadījumā. Man nācies izmantot tikai tad, kad jāatjauno sesija, kas nobeigta aizverot browseri.

  5. Liels paldies Venom. Visu sapratu iznjemot sho rindu:

     

    ar (int) zīmjrinda (string, text) pārtop par 0 un kvērijs godīgi atbild, ka neko tādu nav atradis

     

    Nesapratu kaa partop par 0, par citu vertiibu nevar paartapt ? Vai to 0 nodod tam mainiigam ? Godiigi sakot nesapratu

    vajadzēja tev no sākuma pasēdēt kādā Turbo Pascalī, lai pamācītos kas ir mainīgo tipi, un kā tie pielietojami.

     

    Here is a little something to blow ya mind:

    $x=1;
    $expression=array
    (
    1+1,
    1+1.0,
    1+'text',
    'text'+1,
    $x.'text',
    'text'.$x,
    1*2,
    1*2.0,
    2*'text',
    (0),
    (1),
    (0.0),
    (null),
    ('text'),
    (!'text'),
    (1).'text',
    (1.2).'text',
    (int)'text',
    (float)'text',
    (string)1,
    (string)1.2,
    (int)1.2,
    (int)'1.2 in text',
    (float)'1.2 in text',
    (int)'text and then 1',
    'text'*0,
    '23'*1,
    '45'*7.8,
    trim(' text '),
    trim(''),
    (trim('')),
    (!false),
    (false && trim('')),
    ++$x,
    $x++,
    --$x,
    $x--,
    1+ ++$x,
    1+$x++,
    4- --$x,
    4-$x--,
    floor(4.2),
    floor(4.49),
    ceil(4.2),
    ceil(4.98),
    0.1+0.7,
    0.8*10,
    floor((0.1+0.7)*10),
    $tmp=array(),
    $x=3,
    $x=($x+4),
    $ary[1][2]=2,
    $x=$y=$z=1,
    $y,
    $x+=4,
    $x*=4,
    $x/=5,
    $x.='text',
    $x>>1,
    $x<<2,
    $ary[2][1]=$ary[1]=$ary=array(1),
    );
    ob_start();
    foreach($expression as $result)
    var_dump($result);
    echo nl2br(ob_get_clean());
    print '<pre>'.print_r($ary,1).'</pre>';

  6. vai nu maini headerī

    <meta http-equiv="Content-Type" content="text/html; charset=šeit">

    chārsetu atbilstoši valodai (windows-1257 lv, windows-1251 ru, iso-kāds viņš tur bija en)

     

    vai dari kā taisa lielie puikas - ieliec tur utf-8 un tas būs universāli visām valodām, pie tam varēsi vienā lapā rādīt normāli info vairākās valodās

  7. Esmu jau vairakas reizes ieverojis ka priekshaa skaitlim liek (int). Tachu nezinu, kaadeel tas nepiecieshams, pareizi straadaas arii bez taa, vai ne ? Varbuut notiek aatraak darbiibas ar mainiigiem ?

    (int) (float) un (string) priekšā mainīgajam ir vienlīdzīgi attiecīgi

    $x=intval($x);

    $x=floatval($x);

    $x=strval($x);

    resp. nomaina mainīgā tipu uz attiecīgi veselskaitli, daļskaitli, zīmjrindu (o kādu vārdu izdomāju!)

     

    augstākminētā piemērā izmantoju, lai izvairītos no t.s. SQL injekcijām un nepareizo datu nodošanu

     

    jo ja kāds iedomājas adreses laukā ierakstīt

    ?ID=2.3 - nekas netiks atrasts

    ?ID=teikums - tas pats

    ?ID=>0 pieprasījums nomainīsies par "SELECT * FROM table WHERE id=>0" un tiks atgriesti visi ieraksti

    ?ID=0 OR other_column LIKE '%' - izvēlēties kādus citus ierakstus

     

    ar (int) zīmjrinda (string, text) pārtop par 0 un kvērijs godīgi atbild, ka neko tādu nav atradis

     

    un tās vēl ir puķītes

     

    ieteicams vispār arī izmantot mysql string kontekstu, ja vien neesi pilnībā drošs par to, kas ienāks, resp. likt

    "... WHERE id='".$_GET['ID']."'" t.i. mysql saņems, piem WHERE id='2', 'pats pārbaudīs, ka id ir jābūt INTEGER, pārkonvertēs '2' par 2 un izvēlēsies, un otrādi, ja tiks arī mysql pusē saņemts id='text', 'text' pārtaps par 0

     

    2pnp- int(34) - kur tu tādu i redzējis? saprotu, ja būtu chr()

  8. winow.open(lapa,title,'fullscreen')

     

    nav pat jāliek =1

     

    un tu tur savā kodā pat sev pretēju uzrakstīji: no sākuma it kā fullscreen, bet tālāk atkal left/top, kas spiež rādīt logu kā logu (ja vismaz būtu apmainīti vietām, būtu iespēja, ka atvērtos). fullscreens jau nu pats zinās kur ir left un top

  9. javascriptā varēja to logu nominimizēt ar window.blur() (var arī uzlikt viņam

    window.onfocus=blur;, ķipa lai nevar uz augšu pacelt)

     

    vispārīgā gadījumā laba fiška ir slēpt kaut ko no acīm, bet rādīt printerim caur css, izmantojot tā mēdija norādīšanas tipu uz print (piemērot printēšanas iekārtām)

     

    <html>
    <style type="text/css">
    .body {display:none}
    .notify {display:block}
    </style>
    <style type="text/css" media="print">
    .body {display:block}
    .notify {display:none}
    </style>
    </head>
    <body>
    <div class="notify">Kaut kas par to, ka lūk tā un tā, tiek printēts</div>
    <div class="body">
    Tas, kam nav jārādas, bet jāprintējās
    </div>
    </body>
    </html>

     

    ieglabā šito htmlā un apskaties ar pārlūku un tā print preview

  10. if (preg_match(/^[^āšņģŽš...]{7,10}$/', $password)) { // ... vietā saraksti visus mīkstos/garos burtus
    ...
    }

    pie tam, vajadzīgā kodējumā (koda kodējums==lapas kodējums, ja tas ir utf-8, vajadzētu pielikt /u parametru pregam), ja gribi pieļaut tikai angļu burtus, izmanto attiecīgi #[a-z]{7,10}#i pregu

×
×
  • Create New...