Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    PDO inserire nello script il controlo della connessione

    Salve,
    ho uno script estremamente lungo e per tanto una volta aperta la connessione facilmente si arriva al timeout di Mysql (Mysql server has gone away).

    La farm mi suggerisce di controllare ad ogni ciclo che effettuo se la connessione è attiva e nel caso non lo sia riaprirla.

    Ho visto che prima si poteva usare mysql_ping ma non so come utilizzare un qualche cosa di simile in PDO.

    Come posso controllare che una variabile di connessione PDO sia ancora collegata?
    Cerco in giro ma trovo addirittura delle classi da aggiungere, mi pare un po' troppo per verificare una connessione.

    Grazie in anticipo!

  2. #2
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    temo che l'unico modo sia definire una tua classe con una funzione che simuli mysql_ping

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Quote Originariamente inviata da clasku Visualizza il messaggio
    temo che l'unico modo sia definire una tua classe con una funzione che simuli mysql_ping
    Hai qualche cosa da passarmi o farmi vedere? francamente non saprei da dove cominciare, grazie in anticipo sempre

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    783
    La soluzione di clasku è ottima, però puoi anche configurare mysql in modo da avere un timeout più lungo.
    Qui trovi la documentazione per la variabile interessata: https://dev.mysql.com/doc/refman/5.7...r_wait_timeout

    Con il valore di default la connessione dovrebbe essere chiusa dopo 8 ore, ti serve tutto questo tempo?

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Ciao scusate il ritardo,
    non mi servono 8 ore ma almeno un'oretta si. Ho fatto alzare il mysql dalla farm che di default è impostato a 10 minuti.
    Loro sconsigliano caldamente e dicono che sarebbe meglio riconnettersi al db se la connessione è caduta.

    Clasku, francametne la classe non ho capito come usarla, mi dai una mano? tenedo presente che dovrei chiamare questa classe in un'altra classe dove ci sono tutte le funzioncine mie che si collegano al DB.

    Grazie in anticipo

  7. #7
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    non so come sia fatto il tuo codice, ma se nella tua classe hai un attributo che identifica la connessione, puoi provare a creare un metodo ping simile a quello che trovi nell'esempio

    quando usi l'oggetto connessione, richiami il metodo ping prima di eseguire la tua query così se la connessione è scaduta te la riapre in automatico e tu puoi proseguire

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.