Jump to content
php.lv forumi

Venom

Moderatori
  • Posts

    1,918
  • Joined

  • Last visited

Posts posted by Venom

  1. vismaz niks atbilstošs

     

    ā) precīzāk jautājumu - KAD noteikt? pirms tā nosūtīta, vai pēc?

    bē) pirms - JavaScript

    cē) pēc - pārbaudām, vai ir attiecīgiem mainīgie iekš $_GET vai $_POST, attiecībā no <form method="?"

    dē) lai paskatītos, kas atrodas masīvā ($_GET un $_POST ir masīvi), ērti izmantot funkciju print_r [print recursive], piemēram šādi: echo '<pre>'.print_r($_POST,1).'</pre>';

  2. $html=@implode('',@file('http://citas.lapas.www'));

    //tagad iekš $html būtu jābūt citas lapas kodam

    if (!$html)

    exit;

     

    Tālāk jāatrod likumsakarība "kas ir apkārt tiem cipariem" un jāpadarbojas ar str_replace, strpos, preg_match u.c. uz $html.

  3. Zendam viss ar unikode iraid labi, dažiem varbūt rokas līkas.

     

    Varētu būt probzas, ja tev kāds ne-utf burts līdzās angļu simbolam (tegam, php) un tas tiek apvienots vienā utf-8 simbolā (resp. katri 2 byte pārveidoti par 1 utf-8 simb.) Pamēģini atdalīt tagus no burtiem ar speisiem un nomainīt kodējumu.

     

    Mans gan raksta visu ANSII, "saskārnes tekstus" izvada caur funkciju, angļu valodā, bet pie vajadzības tiek "pieslēgts" failiņš ar utf-8 tulkojumiem, viss kas netiek iztulkots vadās angliski.

     

    e.g.

    function tr($word)

    {

    if (!empty($dict[$word]))

    return $dict[$word];

    return $word;

    }

     

    failiņš tr_lv.php

    <?php $dict=array('Welcome'=>'Sveicināti',...); ?>

     

    iekš index.php

    echo tr('Welcome').', '.$user.'!';

     

    nu apmērām.

  4. Venom, protams ar preg_replace to var panākt universālāk, bet es jau sākumā domāju, ka cilvēkam vajag tikai šos sešus tagus apkaut :)

    bubu, neattaisnojies ;)

    tevi es palaboju tikai tajā str_replace variantā, ar to otru parametru, jo If search is an array and replace is a string; then this replacement string is used for every value of search.

     

    Vispār es uzrakstīju un turpinu pilnveidot f-ju, kas atstātu tikai atļautos tagus un to atļautos atribūtus, jo strip_tags var atstāt e.g. <b style="height:1000%" onclick="..."></b>.

  5. G.M., atvēr Dreamweaveri un "uzsit" SHIFT+F1, tur labais manuālis priekš JavaScript, kuru regulāri lietoju (iekšēji).

     

    kā bubu pareizi teica, forms ir masīvs

     

    NB es lietotu universālāku variantu. Pārbauda jebkuras formas "apsauktos" ar "name" attribūtu elementus:

    jebkurai formai
    <form onsubmit="return validate(this)">
    
    function validate(frm)
    {
    x=frm.elements.length;
    while(--x>-1)
    {
     if (frm.elements[x].name && frm.elements[x].value=='')
     {
      alert('Kāds lauks palicis neaizpildīts');
      return false;
     }
    }
    return true;
    }

  6. cik saprotu, $a ir "juris", $b ir "lacis", aka $a==username, $b==pasword?

     

    if (isset($_POST['a'],$_POST['b']))
    {
    $usr_pwd_combo=file('paroles.txt');
    if (!in_array($_POST['a'].'::'.$_POST['b']."\n",$usr_pwd_combo))
    {
      echo 'no such usr/pwd combination';
      exit;
    }
    }

  7. Ā, tu gribēji tajā pašā kodā

    while (false !== ($raksts = readdir($handle))) {

    if ($raksts != "." && $raksts != "..")

    {

    { apstrādājam rakstu }

    }

    iekš tā "if" $raksts pataisīt par masīvu?

     

    no sākuma direktorijas "jāuzkrāj" masīvā, kas arī tiek darīts ar

     

    $dir=opendir('raksti');//handle

    $direktorijas=array();//sagatavojam masīvu

    while($rdir=readdir($dir))//kamēr ir item-i

    $direktorijas[]=$rdir;//pievienojam pa vienam masīva elementam

  8. Es tachu teici ka neko nesaprotu no taa!! No php !! Visi nav ti gudri kaa tu... <_<

    Uz *.eclub neļauj palaist funkciju mail(), lai lietotāji nesūtītu spamu no eclub servera.

    Ir iespējams to apiet, bet metode "ne priekš iesācējiem".

  9. šis te mani godīgi pārsteida ==> $raksts_b = array($raksts);

    $raksts jau pats par sevīm _ir_ masīvs, vai nē?

     

    mans uzdevums nav rakstīt kodu tevis vietā, bet gan iedot ideju. Un mana ideja šobrīd iraid, ka tev jāpalasās par masīviem.

     

    un tā:

    $direktorijas=array();

    while($rdir=readdir($dir))

    $direktorijas[]=$rdir;

     

    unset($direktorijas[array_search('.',$direktorijas)]);

    unset($direktorijas[array_search('..',$direktorijas)]);

     

    [cut a]

    sort($direktorijas);

    $direktorijas=array_reverse($direktorijas);

     

    while($cur_dir=array_shift($direktorijas))

    {

    ....

    $cur_dir=tekoša direkorija

    }

    [/cut]

     

    [cut b]

    sort($direktorijas);

    while($cur_dir=array_pop($direktorijas))

    { ... }

    [/cur]

     

     

     

    array_reverse($raksts_b);

    foreach($raksts_b as $raksts_c){

    $datums = $raksts_c;

    }

    print($datums);

  10. ā) php _var_ taisīt ar notepad-u. tas ir tīrais koda teksts.

    bē) php kods jāietver iekš <?php ?> lai serveris saprastu, kur ir tas kods, kas viņam jāizpilda. Ar to, ka nosauci failu par *.php nepietiek.

     

    Bē varētu būt atbilde kāpēc nekas nepienāk.

  11. ā) globālais mainīgais, e.g.

    function veinalgakādsnosaukums()

    {

    global $str;

    ....

    $str=str_replace....

    }

    funkcija apstrādā tekošo $str mainīgā vērtību

    pielietojums:

    $str='kaur kāds strings';

    funkcija();

     

    bē) function ...($str)

    {

    $str=str_replace...

    return $str;

    }

    pielietojums:

    $str=funkcija($str);

     

    return pārtrauc f-jas izpildi, resp.

    function ....($str)

    {

    if (empty($str))

    return;

    $str=str_replace...

    return $str;

    }

    apstrādā stringu tikai tad, ja tas nav tukšs

  12. Roze, saki luudzu, kaa es varu sazorteet tabulas (jaunaakais datums aukshaa), ja datums nav array? .. tas tak laikam nemaz nav iespeejams. vai ne?

    Kas tev maisa no sākuma nolasīt visu direktoriju nosaukumus un ieglabāt tos masīvā? Te ir ļoti parocīgi, ka datumus esi saglabājis yyyy.mm.dd veidā. Izmantojot sort($array) vai rsort($array) [reverse sort] kārto masīva elementus augošā/dilstošā secībā.

     

    bubu laikam runā par funkciju glob(), vai shell_exec rezultātu pārsešanu.

  13. skatāmies manuāli:

    mixed str_replace ( mixed search, mixed replace, mixed subject [, int &count] )

     

    mixed nozīmē, ka tur var būt dažāda tipa mainīgie, piemēram masīvi

     

    tālāk:

    If search and replace are arrays, then str_replace() takes a value from each array and uses them to do search and replace on subject. If replace has fewer values than search, then an empty string is used for the rest of replacement values. If search is an array and replace is a string; then this replacement string is used for every value of search.

  14. text elementam ir name, pieņemsim name="uzmailu"

    pirms elementaa jāieliek

    <form method="post" action="apstrādājošā lapa">

    un pēc </form>, piemēram

     

    <form method="post" action="mail.php">

    <textarea name="uzmailu"></textarea><br />

    <input type="submit" value="sūtīt" />

    </form>

     

    mail.php saturs analoģisks:

     

    if (!empty($_POST['uzmailu']) && trim($_POST['uzmailu']))

    mail('[email protected]', 'Subject lauks, piem. Jauns Komentārs',$_POST['uzmailu']);

     

    easy as that

     

    ja nav pieejas php/pl/cgi taisīšanai, var nostrādāt arī

    <form method="post" action="mailto:[email protected]">

    tikai šajā gadījumā sūtītājam obligāti jābūt uzinstalētai kādai pasta programmatūrai (The Bat!, Outlook, Foxmail, Kmail, ...)

×
×
  • Create New...