Jump to content
php.lv forumi

raivis

Reģistrētie lietotāji
  • Posts

    106
  • Joined

  • Last visited

Posts posted by raivis

  1. Piedod, bet vai tas būtu korektājais variants!?

    Jo, iespējams, ka lietotājs vēl pēc 10min. (600sec.) atrodās sistēmas onlinā, bet tas vairs diemžēl netiek ņemts vērā...

    Nedaudz labāks variants: ja JavaScript'ā uztaisa, ka ik pēc minūtes, piemēram, nosūta uz tavu servera skriptu, ka lietotājs vēl atrodas lapā, tādējādi atjaunojot to laika skaitīšanu.
    ..bet vai līdz ar to reizi minūtē netiks Refresh'ota lapa?
  2. login.php kodā saglabā failā laiku, kad lietotājs ir iegājis lapā.

    Bet index.php failā salīdzini tekošo laiku, ar katra ieraksta laiku, ja piemēram tas lielāks par 10 minūtēm, tad pieņem, ka lietotājs ir izgājis no lapas un neskaiti viņu (tb izmet ārā).

    Piedod, bet vai tas būtu korektājais variants!?

    Jo, iespējams, ka lietotājs vēl pēc 10min. (600sec.) atrodās sistēmas onlinā, bet tas vairs diemžēl netiek ņemts vērā...

  3. Drošivien nepareizi darīju!? - lai noteiktu, cik lietotāji ir sistēmas onlinā, login.php kodā ierakstīju:

    $data = "online.txt";

    $file = @join("", file($data));

    $online = @fopen($data, "w");

    fputs($online, "|".$user);

    fputs($online, $file);

    fclose($online);

    , bet logout.php kodā:

    $data = "online.txt";

    $online = str_replace(array("\n","\r"," "),"",file_get_contents($data));

    $online = explode("|",$online);

    $key = array_search($user,$online);

    if ($key !== false) unset($online[$key]);

    $file = fopen($data,"w");

    fwrite($file,implode("|",$online));

    fclose($file);

    , bet index.php kodā izvada, cik (un kas) ir onlainā:

    $data = "online.txt";

    $online = str_replace(array("\n","\r"," "),"",file_get_contents($data));

    $online = explode("|",$online);

    $online = count($online) - 1;

    echo "on-line: <b>".$online."</b><br>"; //un taa taalaak..

    ..līdz ar to, ja lietotājs izlogojās aiztaisot Internet Explorer logu, nevis ieejot adresē logout.php, online.txt fails netiek koriģēts un uzrāda, ka lietotājs vēl ir onlinā!...?

    ..kā lai to apeju!?

    ~domāju, ka kļūdaini/nekorekti man būtu to tā atstāt.

  4. Ar session.gc_maxlifetime nav viss līdzēts..

    Lietotājam ielogojoties, tmp[session_save_path();] direktorijā saglabājās lietotāja dati-> $_SESSION['user'], $_SESSION['pass'] vērtības:

    1. ja lietotājs izlogijās, ieejot adresē logout.php, tad viss ir Ok!=> session_destroy(); echo "Jūs esat izlogojies!";

    2. ja lietotājs izlogojās, vienkārši aizverot Internet Explorer logu, tad session tmp faili paliek neiztukšoti/nelikvidēti!

    - kā lai panāku, lietotājam online režīmā aizverot Internet Explorer logu,=> session_destroy();

  5. Ja lietotājs ielogojās web lapā, direktorijā session_save_path()

    failā piem. sess_83b29f30ab7e4d8652e4f65b961432bc saglabājas šā lietotāja $_SESSION["user"] un $_SESSION["pass"] vērtības.

    login.php

    $user = $_POST["user"];
    $pass = $_POST["pass"];
    $_SESSION["user"] = $user;
    $_SESSION["pass"] = $pass;
    include("userArea.inc");

    Ja lietotājs no web lapas izlogojās caur linku logout.php, sessijas vērtības tiek izdzēstas, bet kā lai to pašu panāk, kad lietotājs, kurš ir ielogojies - proti, atrodas online režīmā, lai izlogotos, lieto nevis linku logout.php, bet aizver Internet Explorer logu..!???

    logout.php

    $_SESSION["user"]  = false;
    $_SESSION["pass"]  = false;
    session_destroy(); //session_unset(); session_unregister();
    
    $path = session_save_path()."/"; //[Session] session.save_path
    $handle=opendir($path);
    while ($file = readdir($handle)) {
    if(is_dir($path.$file) && $file != ".") {
    } elseif ($file != "." && filesize($path.$file) == 0) {
       unlink($path.$file);
     }
    }
    echo "Jūs esat izlogojies!";

  6. Bez liekas piepūles atkodu:

     

    <?php

    //$b= @implode(@file('mainigie.php'));

    #start: mainiigie

    $body ='ezs page';

    $title='sad';

    #end; mainīgie

     

    $tpl['BODY']='$body';

    $tpl['TITLE']='$title';

     

    ob_start();

    ?>

     

    body: {BODY}<br>title: {TITLE}

     

    <?php

    $html=ob_get_clean();

    foreach($tpl as $key=>$val)

    $html=str_replace('{'.$key.'}',$val,$html);

    echo $html;

    ?>

     

    ..tā kā php esmu tikai iesācējs, tad: arī šis kods priekš manis bija jaunums.

    Ceru, ka piedosiet man par izkrāsošanu! :)

  7. ..no jūsu puses: klusums!?

    $fileData = file("data.txt");
    $personList = array();
    foreach ($fileData as $row){
    list($name, $age, $email) = explode('|', $row);
    $personList[] = array('name' => $name, 'age' => $age, 'email' => $email);
    }
    
    echo '<h1>Personas dati</h1>';
    foreach ($personList as $key => $person){
    if ($person['name'] == 'Peteris'){
    print '<h2>'.$person['name'].'</h2>
    <p>Vecums: '.$person['age'].'</p>
    <p>E-pasts: '.$person['email'].'</p>';
    } else {
    print "no info"; //pat, ja ir vairākas $person['name'] vētības; } else { "no info" izvadīt tikai 1 REIZI!!
    }
    }

    Kā lai pieprasu, lai "no info" izvadītu tikai 1 REIZI!, ja ir vairākas $person['name'] vētības?

    //ar break; continue; exit; die; nekā nav līdzēts :(

  8. Send to Kaklz..

    ---

    kļūda:

    Warning: strtotime() [function.strtotime]: Called with an empty time parameter. in c:\wamp\www\scripts\online.php on line 21

    Warning: strtotime() [function.strtotime]: Called with an empty time parameter. in c:\wamp\www\scripts\online.php on line 21

     

    rindiņā:

    if (strtotime($time) + $y * 60 > strtotime(date('Y-m-d H:i:s'))){

  9. !nenostrādā..

    session_start();
    header("Cache-control: private");
    
    if(!isset($_POST['user']) && !isset($_SESSION['user']) && !isset($_POST['pass']) && !isset($_SESSION['pass'])) {
    echo "<form action=\"\" method=\"POST\">
    Login:<input type=\"text\" name=\"user\"><br>
    Pass:<input type=\"password\" name=\"pass\"><br>
    <input type=\"submit\" value=\"Login\">
    </form>";
    } else {
    echo "<a href=\"javascript:window.location=window.location\">Refresh</a> ";
    if(@$_SESSION['user'] && @$_SESSION['pass']){
     echo "<a href=\"?id=logout\">Logout</a><hr>ok! ".$user." ".$pass; //header('location: index.php?id=login');
     } else {
      $_SESSION['user']=array();
      $_SESSION['pass']=array();
      $_SESSION["name"]              = $name;
      $_SESSION["surename"]          = $surename;
      $_SESSION["user"]              = $user;
      $_SESSION["pass"]              = $pass;
        if (!in_array($_SERVER['QUERY_STRING'],@$_SESSION['user'] && @$_SESSION['pass'])) {
         @$_SESSION['user'] && @$_SESSION['pass'][]=$_SERVER['QUERY_STRING'];
        } else {
         header("locarion: index.php");
         exit;
        }
     }
    }
    if ($id==logout) {
    if(@$_SESSION['user'] && @$_SESSION['pass']){
     $_SESSION["name"]              = false;
     $_SESSION["surename"]          = false;
     $_SESSION["user"]              = false;
     $_SESSION["pass"]              = false;
     session_destroy();
    }
    echo "<br>You are <b>logout!</b>"; //header('location: index.php?id=logout');
    }
  10. !?Nav ne jausmas, kā lai panāku, ka "no info" izvadītu tikai 1reizi, ņemot vērā, ka data.txt:

    Janis|18|[email protected]|
    Peteris|21|[email protected]|
    Juris|51|[email protected]|
    Olga|18|[email protected]|
    Janis|11|[email protected]|

    $fileData = file("data.txt");
    $personList = array();
    foreach ($fileData as $row){
    list($name, $age, $email) = explode('|', $row);
    $personList[] = array('name' => $name, 'age' => $age, 'email' => $email);
    }
    
    echo '<h1>Personas dati</h1>';
    foreach ($personList as $key => $person){
    if ($person['name'] == 'Peteris'){
    continue
    print '<h2>'.$person['name'].'</h2>
    <p>Vecums: '.$person['age'].'</p>
    <p>E-pasts: '.$person['email'].'</p>';
    break;
    } else {
    continue
    print "no info";
    break; //break; continue; exit; die;
    }
    }
  11. nez vai sapratīsiet jautājumu, bet..

    Ja data.txt:

    03.12.2004|janis|komentā[email protected] 16:35|peter|komentārs1*07.12.2004 19:48|olga|komentārs2*12.12.2004 08:06|janis|komentārs3*
    21.10.2004|admin|komentā[email protected] 16:35|peter|komentārs1*07.11.2004 19:48|olga|komentārs2*

    Kā iespējams šo skriptu attiecināt uz failu data.txt sākot ar simbolu @

    $fileData = file('data.txt');
    $messageList = array();
    foreach ($fileData as $row){
    list($date, $user, $msg) = explode('|', $row);
    $messageList[$user] = array('date' => $date, 'user' => $user, 'msg' => $msg);
    }
    
    ksort($messageList);
    
    echo '<h4>Ziņojumi..</h4>';
    foreach ($messageList as $key => $message){
    echo '<i>'.$message['date'].'</i> <b>'.$message['user'].'</b>: '.$message['msg'] . '<br>---<br>';
    }

    proti, if ($lpp==$rindinja) {

    print no rindiņas $rindinja mainīgo $message['date'], $message['user'], $message['msg'] vērtības }

    else { ja nav iepostotu ziņojumu: print "no message"; }

     

    proti, gala rezultātā vajadzētu izskatīties kam tml:

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

    03.12.2004 Janis

    komentārs

    [3 komentāri]

    ---

    21.10.2004 Admin

    komentārs

    [2 komentāri]

    ---

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

     

    Aplūkojot 03.12.2004 datuma komentārus: //?lpp=0

    03.12.2004 Janis

    komentārs

    ------------------------------------------------------

    12.12.2004 08:06 Janis

    komentārs3

    ---

    07.12.2004 19:48 Olga

    komentārs2

    ---

    07.12.2004 16:35 Peter

    komentārs1

    ---

    Pievienot savu komentāru..

     

     

    Aplūkojot 03.12.2004 datuma komentārus: //?lpp=1

    21.10.2004 Admin

    komentārs

    ------------------------------------------------------

    07.11.2004 19:48 Peter

    komentārs2

    ---

    07.11.2004 16:35 Olga

    komentārs1

    ---

    Pievienot savu komentāru..

    !???

  12. Kā, izejot no šī koda, lai pieprasu: ja $person['name'] nav 'Peteris', tad:

    izvadīt "no info"; //tikai 1reizi

    $fileData = file("data.txt");
    $personList = array();
    foreach ($fileData as $row){
    list($name, $age, $email) = explode('|', $row);
    $personList[] = array('name' => $name, 'age' => $age, 'email' => $email);
    }
    
    echo '<h1>Personas dati</h1>';
    foreach ($personList as $key => $person){
    if ($person['name'] == 'Peteris'){
    echo '<h2>' . $person['name'] . '</h2>
    <p>Vecums: ' . $person['age'] . '</p>
    <p>E-pasts: ' . $person['email'] . '</p>';
    }// else {
    // echo "no info";
    //}
    }

  13. Paldies, Venom!

     

    Es izmantotu, ko tml:

    echo 'Aizņemts '.round($tmp=$size/1024).' kb, kas ir '.round($tmp/1024*100).' %, apakšdirektorijas '.$dirs.', failu '.$files.'<br>';
    echo 'Aizņemts '.round($tmp=$size/1024).' kb, kur brīvs '.round((1-$tmp/1024)*100).' %, apakšdirektorijas '.$dirs.', failu '.$files;

  14. nez vai sapratīsiet jautājumu, bet..

    Ja data.txt:

    03.12.2004|janis|komentā[email protected] 16:35|peter|komentārs1*07.12.2004 19:48|olga|komentārs2*12.12.2004 08:06|janis|komentārs3*
    21.10.2004|admin|komentā[email protected] 16:35|peter|komentārs1*07.11.2004 19:48|olga|komentārs2*

    Kā iespējams šo skriptu attiecināt uz failu data.txt sākot ar simbolu @

    $fileData = file('data.txt');
    $messageList = array();
    foreach ($fileData as $row){
    list($date, $user, $msg) = explode('|', $row);
    $messageList[$user] = array('date' => $date, 'user' => $user, 'msg' => $msg);
    }
    
    ksort($messageList);
    
    echo '<h4>Ziņojumi..</h4>';
    foreach ($messageList as $key => $message){
    echo '<i>'.$message['date'].'</i> <b>'.$message['user'].'</b>: '.$message['msg'] . '<br>---<br>';
    }

    proti, if ($lpp==$rindinja) {

    print no rindiņas $rindinja mainīgo $message['date'], $message['user'], $message['msg'] vērtības }

    else { ja nav iepostotu ziņojumu: print "no message"; }

     

    proti, gala rezultātā vajadzētu izskatīties kam tml:

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

    03.12.2004 Janis

    komentārs

    [3 komentāri]

    ---

    21.10.2004 Admin

    komentārs

    [2 komentāri]

    ---

    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

     

    Aplūkojot 03.12.2004 datuma komentārus: //?lpp=0

    03.12.2004 Janis

    komentārs

    ------------------------------------------------------

    12.12.2004 08:06 Janis

    komentārs3

    ---

    07.12.2004 19:48 Olga

    komentārs2

    ---

    07.12.2004 16:35 Peter

    komentārs1

    ---

    Pievienot savu komentāru..

     

     

    Aplūkojot 03.12.2004 datuma komentārus: //?lpp=1

    21.10.2004 Admin

    komentārs

    ------------------------------------------------------

    07.11.2004 19:48 Peter

    komentārs2

    ---

    07.11.2004 16:35 Olga

    komentārs1

    ---

    Pievienot savu komentāru..

    !???

×
×
  • Create New...