Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    mysql_free_result e classe per la connessione

    Salve a tutti... ho una mia classe per la connessione al db che ha questo metodo
    Codice PHP:
     public function esegui($a=""){
      
    $query=$a;
      if(
    $query!==""){
       if(
    $this->debug==1$this->messaggi[]=$query;
       
    $rismysql_query($query,$this->conn) or die("
    Errore nella query: " 
    mysql_error()."
    "
    .$query);
      }else{
       if(
    $this->debug==1$this->messaggi[]=$this->query;
       
    $ris=mysql_query($this->query,$this->conn) or die("
    Errore nella query: " 
    mysql_error()."
    "
    .$this->query);
       
    $this->query="";
      }
      return 
    $ris;
     } 
    Quando devo mandare un SQL in azione lo richiamo in questo modo:
    Codice PHP:
    $SQL="SELECT * FROM ....";
    $risultato=$_CONN->esegui($SQL);
    while(
    $riga mysql_fetch_array($risultato)){
     .. 
    fai qualcosa..

    Ora mi chiedevo se era corretto ed utile mettere dopo la chiusura del while
    Codice PHP:
    mysql_free_result($risultato); 
    o se in realtà dovrei svuotare la variabile $ris del metodo della classe.
    Che ne pensate?
    La fantasía, abandonada de la razón, produce monstruos imposibles; unida con ella es madre de las artes y origen de las maravillas.
    (Francisco Goya)
    ----------------------------------------
    http://www.mangioebevo.it
    http://www.definitives.org

  2. #2
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    La variabile $ris è una variabile locale alla funzione, quindi cessa di esistere nel momento in cui la funzione termina. Ne consegue che non ha senso parlare di "svuotare la variabile $ris del metodo della classe".

    Utilizzare mysql_free_result libera lo spazio impegnato dal result set e di norma va utilizzato in presenza di query che producono delle tabelle con molti risultati e quando il result set non è più necessario. Comunque tutta la memoria impegnata dallo script php è rilasciata al termine dello stesso.

    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  3. #3
    quindi utilizzo
    Codice PHP:
    mysql_free_result($risultato); 
    Non mi fido del garbage perchè ho un ambiente di produzione con PHP su IIS e secondo me li non funziona bene... già le sessioni non scadono...
    La fantasía, abandonada de la razón, produce monstruos imposibles; unida con ella es madre de las artes y origen de las maravillas.
    (Francisco Goya)
    ----------------------------------------
    http://www.mangioebevo.it
    http://www.definitives.org

  4. #4
    up
    La fantasía, abandonada de la razón, produce monstruos imposibles; unida con ella es madre de las artes y origen de las maravillas.
    (Francisco Goya)
    ----------------------------------------
    http://www.mangioebevo.it
    http://www.definitives.org

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.