Curs Php-mysql


Este un script care contorizeaza numarul de click-uri pe un link (sau mai multe) de pe o pagina web si stocheaza datele intr-un fisier text. Contorizeaza inclusiv numarul de click-uri pe link-uri de download (util pentru cunoasterea numarului de download-uri).
Scriptul contorizeaza toate link-urile si le stocheaza intr-un fisier text.

Cod Script (nrclick.php)

<?php
// Script pt. contorizarea click-urilor pe link (inclusiv link-uri de download)
// MarPlo (marplo.net)

$nrclickFile = "nrclick.txt";   // Numele fisierului care stocheaza nr. de clickuri.
$campul = 0;


// Verifica daca preluarea adresei url e pozitiva, in caz afirmativ prelucreaza datele
if(isset($_GET['url'])) {
  $url = $_GET['url'];    // Preia adresa url din link.
  $fisier = fopen($nrclickFile, 'r+b');
  flock($fisier, LOCK_EX);   // Blocheaza fisierul

  // Citeste fisierul de stocare linie cu linie pentru gasirea cimpului cu URL-ul.
  while($citeste = fgets($fisier)) {
    if(!strcmp($citeste, $url."\n")) {   // Compara linia gasita cu url-ul (daca sunt egale 'strcmp'=0)
      $reda = ftell($fisier);   // Returneaza pozitia curenta a pointer-ului
      $nrclick = fgets($fisier);   // Preia data (nr.) care se afla pe linia imediat dupa pozitia gasita de 'ftell' 
      $nrclick = 1 + "$nrclick"; // Mareste nr. de clickuri cu o unitate
      fseek($fisier, $reda);   // Seteaza noua pozitie a pointerului (de la inceputul fisierului in bytes) la nivelul precizat de 'ftell', pt a adauga in locul corect noua valarea de click-uri
      fputs($fisier, "$nrclick");  // 'fputs' este un alia a lui 'fwrite' (scrie noua valoare)
      $campul = 1;
    }
  }

  // Daca nu a fost gasit linia cu URL-ul, atunci scrie in fisier un camp cu URL-ul.
  if(!$campul) {
    fwrite($fisier, $url."\n");   // Scrie url-ul si adauga o noua linie
    fputs($fisier, "1"."        \n");  // Adauga nr. clickuri 1 in linia imeiat dupa url 
  }

  @flock($fisier, LOCK_UN);   // Deblocheaza fisierul
  fclose($fisier);

  // Redirectioneaza browserul spre url-ul preluat $_GET
  header("Location: " . $url);
} 

// Functie pentru afisarea numarului de click-uri.
function showclicks($numeurl) {
  $nrclick = 0;
  global $nrclickFile;   // introduc numele fisierului in functie
  $fisier = fopen($nrclickFile, 'r');  // Eschide fisierul
  while($citeste = fgets($fisier)) {   // Parcrge fisierul linie cu linie
    if(!strcmp($citeste, $numeurl."\n")) {   // Gaseste pointer-ul liniei cu url-ul si-l stabileste la urmatoarea linie
      $nrclick = fgets($fisier);   // Preia datele Nr. din locul pointer-ului stabilit anterior
      break;   // Opreste parcurgerea fisierului
    }
  }
  fclose($fisier);
  return $nrclick;
}

Utilizare

<?php include("nrclick.php"); ?>

<a href="nrclick.php?url=download/program.zip">Download</a>

<?php echo showclicks("download/program.zip"); ?>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag adauga rand nou in paragraf?
<b> <br> <p>
Prima linie ...<br>
Alta linie...
Ce proprietate CSS seteaza spatiu dintre litere?
text-size word-spacing letter-spacing
#id {
  letter-spacing: 2px;
}
Ce functie obtine accesul la un element HTML cu un anumit ID?
getElementById() getElementsByTagName() createElement()
var elm = document.getElementById("theID");
var content = elm.innerHTML;
alert(content);
Clic pe instructiunea "echo" utilizata corect.
echo "CoursesWeb.net" echo "CoursesWeb.net"; echo ""CoursesWeb.net";
echo "Adresa URL: http://CoursesWeb.net";
Care din urmatoarele expresii cu "paint" (a picta) se foloseste pentru forma Negativa?
will paint not paint have painted
She does not paint that landscape.
- Ea nu picteaza acel peisaj.
Care din urmatoarele expresii cu "cantar" (a canta) se foloseste pentru propozitie Negativa?
ir a cantar cantaba no cantar
Ella no canta esa canciĆ³n.
- Ea nu canta acel cantec.
Contoar click-uri pe link

Last accessed pages

  1. Verbe frazale din limba Engleza (25109)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (148644)
  3. Obiectul Date - Lucru cu Data si Timp (569)
  4. Curs CSS Online Tutoriale CSS3 (57942)
  5. PHP OOP - Clase, Obiecte, constructor (3381)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (4260)
  2. Curs HTML gratuit Tutoriale HTML5 (3512)
  3. Curs si Tutoriale JavaScript (3032)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (2993)
  5. Curs CSS Online Tutoriale CSS3 (2939)