Problemă instalare Node.js Windows 10

Se întâmplă uneori ca la incercarea de instalare a Node.js din installer-ul msi, pe Windows 10, sa apară o eroare cu privire la un fisier .dll lipsă.

Soluția este să modificați permisiunile pe directorul „C:\Users\Doru\AppData\Local\Temp” dând drepturi de acces scriere/citire pentru Everyone.
Dați click dreapta pe directorul Temp, selectați Properties și mergeți în fila Security. Selectați user-ul Everyone și apoi apăsați butonul Edit. Selectați Full control și apăsați OK. Reluați instalarea. La final revocați permisiunile pentru utilizatorul Everyone.

O problemă de paginare

Când rezultatul unei interogări este excesiv de lung, afișarea lui depășind în lungime două înălțimi de ecran, se impune gruparea rezultatului în pagini a căror lungime să fie rezonabilă (două înălțimi de ecran, de exemplu). În continuare prezint o soluție care folosește declarațiile LIMIT și OFFSET în interogările SQL de selecție, cu exemplificare în PHP și MySQL.
Sintaxa este:
SELECT expressions FROM tables [WHERE conditions] [ORDER BY expression [ ASC | DESC ]] LIMIT number_rows [ OFFSET offset_value ];
în care LIMIT specifică numărul de rânduri extrase din interogare și OFFSET numărul rândului începând cu care se extrag următoarele LIMIT rânduri. Spre exemplu SELECT * from tabela LIMIT 5 OFFSET 10 selectează 5 rânduri după primele 10 (rândurile 11-15).
Pentru a folosi interogarea, concret, trebuie să știm care este numărul rezultatelor întoarse de interogarea fără declarațiile LIMIT și OFFSET precum și numărul rezultatelor de afișat pe o pagină.
Fie N numărul total de rânduri al interogării și n numărul de rânduri de afișat pe o pagină. Atunci, numărul de pagini P care vor cuprinde toate cele N rezultate este:
P=N/n dacă N modulo n este 0 și
P=INT(N/n)+1 dacă N modulo n este diferit de 0
Pe N îl aflăm cu o interogare de genul:
SELECT count(*) FROM tabela WHERE condiție.
Nota: pentru simplificare am renunțat la alte clauze în declarația SELECT.
Numărul de pagini îl stabilim:

if($N%$n==0)
$p=$N/$n; //numarul de pagini de afisat
else
$p=intval($N/$n)+1;

După acesta trebuie să inserăm o listă a paginilor, cu link către acestea. În mod concret, lista paginilor se inserează în pagina curentă, care afișează un prim set de rezultate, având valorile parametrilor LIMIT și OFFSET prestabilite, de exemplu 10 și respectiv 0. Dacă fișierul care extrage rezultatele se numește afisare.php, link-urile celorlalte pagini vor fi dirijate tot către el, dar cu parametri în URL, de exemplu: afișare.php?rpp=10&offset=20.
De aceea, scriptul afiseaza.php trebuie să preia valorile parametrilor din URL și, în cazul în care aceștia nu sunt setați, se stabilesc niște valor implicite:
if(!isset($_GET['rpp']) $n=10;
else $n=$_GET['rpp']; //rezultate pe pagina
if(!isset($_GET['offset'])) $offset=0;
else $offset=$_GET['offset'];

Mai departe, generarea link-urilor pentru pagini se face ușor, modificând doar valoarea offsetului, de la o pagină la alta:

$i=1; // $i -> pagina curenta
while ($i<=$p) { //afisam link-urile paginilor
	$url="selectie.php?rpp=".$n."&offset=".($i-1)*($n);
	echo '<a href="$url">'.$i .'</a> ';
	$i++;
}

Un exemplu poate fi văzut aici, unde prin schimbarea parametrilor din URL puteți schimba paginarea.
Se poate să dați utilizatorului posibilitatea de a alege singur câte rezultate să afișeze pe o pagină. Acesta este un exemplu de cum se poate realiza acest lucru, folosind rezultatul anterior. El este inclus în alt fișier, selecție.php, care conține o casetă de selecție care, la schimbarea stării, trimite o cerere AJAX la afișare.php, cu parametrul rpp citit din pagina selectie.php.