le formule magiche

Specific solutions with PHP rules

Soluzioni specifiche con le regole PHP

Information on accessing these resources Informazioni sull'accesso a queste risorse

Member contact form Modulo di contatto per i membri
Per aiuto e segnalazioni

Membership index

New section under construction.

Sezione nuova in allestimento.

NOTE: NOTA: Downloads reserved for members can also be made without registration with a free donation in support of the site. I download riservati ai membri possono essere effettuati anche senza registrazione con una donazione libera in sostegno del sito.

List of downloadable sresources with donationLista delle risorse scaricabili con donazione

Review of solutions using PHP code and communication with the server.

Rassegna di soluzioni usando il codice PHP e la comunicazione con il server.

Close the login session after some time

Chiudere la sessione di login dopo un certo tempo


Code: Codice:
<?php

$minutesBeforeSessionExpire=30; //time in minutes
if (isset($_SESSION['LAST_ACTIVITY']) && (time() - $_SESSION['LAST_ACTIVITY'] > ($minutesBeforeSessionExpire*60))) {
    session_unset();     // unset $_SESSION  
    session_destroy();   // destroy session data
}
$_SESSION['LAST_ACTIVITY'] = time(); // update last activity

?>

URL file protection

Protezione indirizzo file

Server settings, via php and htaccess, to prevent the user from accessing a file via direct link Impostazioni del server, via php e htaccess, per evitare che l'utente possa accedere ad un file tramite link diretto.
PHP:
Add this code in the file.php (example for file.pdf) Aggiungere questo codice nel file.php (esempio per un file.pdf)
<?php
// The location of the PDF file
// on the server
$filename = "./file.pdf"; //add file path
 
// Header content type
header("Content-type: application/pdf");
 
header("Content-Length: " . filesize($filename));
 
// Send the file to the browser.
readfile($filename);
?>

HTML:
On the HTML page, insert the link to the file.php
e.g.: <a href="file.php">Title</a>
Nella pagina HTML inserire il link al file.php
es.: <a href="file.php">Titolo</a>

htaccess:
Create an .htaccess file with the following rule to prevent direct access to the file.pdf: Creare un file .htaccess con la seguente regola per impedire l'accesso diretto al file.pdf:
<Files file.pdf>
Order allow,deny
Deny from all
</Files>

Content-type types:

Tipi di Content-Type:

  • Content-Type: text/html
  • Content-Type: text/plain
  • Content-Type: image/jpeg
  • Content-Type: application/zip
  • Content-Type: application/pdf
  • Content-Type: audio/mpeg

Difference from text/html and text/plain:
Considering the following content:

<p>test</p>

The Content-Type: text/html would display in the browser text:

test

The Content-Type: text/plain would display in the browser in HTML format:

<p>test</p>

Differenza tra text/html e text/plain:
Considerando il seguente contenuto:

<p>test</p>

Il Content-Type: text/html verrà visualizzato nel browser come testo:

test

Il Content-Type: text/plain verrà visualizzato nel browser in formato HTML:

<p>test</p>

Download file zip protection

Protezione download file zip

Server settings, via php and htaccess, to prevent the user from accessing to zip file download via direct link.
On the HTML page, insert the link to the file.php
e.g.: <a href="file.php">Download</a>
file.php content:
Impostazioni del server, via php e htaccess, per evitare che l'utente possa accedere al download di un file zip tramite link diretto.
Nella pagina html inserite il link al file php.
Es: <a href="file.php">Download</a>
Contenuto del file.php:

$filename = "file.zip";  //add file name
$filepath = "./file.zip";  //add file path

if (file_exists($filepath)) {

        header("Pragma: public");
        header("Expires: 0");
        header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
        header("Cache-Control: public");
        header("Content-Description: File Transfer");
        //We can likely use the 'application/zip' type, but the octet-stream 'catch all' works just fine.  
        header("Content-type: application/octet-stream");
        header("Content-Disposition: attachment; filename = $filename");
        header("Content-Transfer-Encoding: binary");
        header("Content-Length: ".filesize($filepath));

        while (ob_get_level()) {
             ob_end_clean();
        }

        @readfile($filepath);

        exit;
}

URL protection

Protezione URL

The script prevents access to the page by directly entering the url in the browser bar, or from links coming from unauthorized domains. Access to the page will only be possible via internal links.
Add the url of the domain (or domains separated by commas) authorized as referer of the link to the php page where the script itself is located.
Lo script impedisce l'accesso alla pagina inserendo direttamente l'url nella barra del browser, o da link provenienti da domini non autorizzati. L'accesso alla pagina sarà possibile solo tramite link interni.
Aggiungere l'url del dominio (o domini separati da virgola) autorizzato come provenienza (referer) del link alla pagina php in cui lo script stesso si trova.

<?php
$referer = $_SERVER['HTTP_REFERER'];
$referer_parse = parse_url($referer);

if($referer_parse['host'] == "sitename.com" || $referer_parse['host'] == "www.sitename.com") {
     // Page content will display
} else {
     header("Location: ./page.html"); //page to redirect if user enters URL directly, or access from an unapproved domain
     exit();
}
?>

Membership index