User Tools

Site Tools


doc:appunti:linux:sa:debian_upgrade_11_12

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
doc:appunti:linux:sa:debian_upgrade_11_12 [2025/07/07 15:42] – [Accesso SSH a vecchie installazioni] niccolodoc:appunti:linux:sa:debian_upgrade_11_12 [2026/07/20 18:12] (current) – [Sintassi per costruttore di classe PHP] niccolo
Line 58: Line 58:
  
 ===== PHP ===== ===== PHP =====
 +
 +==== get_magic_quotes_gpc() ====
  
 Con l'introduzione di **PHP 8.2** la funzione **get_magic_quotes_gpc()** è stata definitivamente rimossa e quindi generea un errore. Con l'introduzione di **PHP 8.2** la funzione **get_magic_quotes_gpc()** è stata definitivamente rimossa e quindi generea un errore.
 +
 +==== Sintassi per costruttore di classe PHP ====
 +
 +PHP 4 usava una convezione per i costruttori di classe: un metodo con lo stesso nome della sua classe veniva automaticamente trattato come costruttore ed eseguito su **new className()**:
 +
 +<code php>
 +class className {
 +    protected $varName;
 +    function className() {
 +        $this->varName = 'value';
 +    }
 +}
 +</code>
 +
 +Tale convenzione è stata deprecata in PHP 7.0 e rimossa completamente in PHP 8.0. Questa è la nuova sintassi necessaria:
 +
 +<code php>
 +class className {
 +    protected $varName;
 +    function __construct() {
 +        $this->varName = 'value';
 +    }
 +}
 +</code>
 +
 +==== PHP dbConnect->prepare() ====
 +
 +Con le versioni precedenti di PHP era possibile usare una sintassi del tipo:
 +
 +<code php>
 +$stmt = $this->dbConnect->prepare('SELECT ...');
 +if ($stmt) {
 +    // Do something
 +}
 +$stmt = $this->dbConnect->prepare('DELETE FROM ...');
 +</code>
 +
 +Con il nuovo PHP è necessario chiudere il primo statement prima di aprirne uno nuovo, altrimenti si ottiene l'errore
 +
 +<code>
 +PHP Fatal error:  Uncaught mysqli_sql_exception: Commands out of sync;
 +    you can't run this command now in /var/www/...
 +</code>
 +
 +La soluzione è chiudere lo statement prima di aprirne un altro:
 +
 +<code php>
 +$stmt = $this->dbConnect->prepare('SELECT ...');
 +if ($stmt) {
 +    // Do something
 +    $stmt->close();
 +}
 +$stmt = $this->dbConnect->prepare('DELETE FROM ...');
 +</code>
  
 ===== SpamAssassin ===== ===== SpamAssassin =====
Line 399: Line 455:
     root@83.149.110.120     root@83.149.110.120
 </code> </code>
 +
 +===== Crittografia SSL =====
 +
 +Con l'aggiornamento delle librerie SSL sembra che alcuni client più datati abbiano problemi a collegarsi al server, ad esempio per quanto riguarda la crittografia dei protocolli SMTP, POP3 e IMAP. In particolare sembra che Outlook 2010 generi un messaggio di errore del tipo **Il server non supporta il tipo di crittografia**. Debian 12 adotta OpenSSL 3.0, con TLS 1.0/1.1 disabilitati nativamente.
  
  
doc/appunti/linux/sa/debian_upgrade_11_12.1751895746.txt.gz · Last modified: by niccolo