Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    168

    inviare mail ad avvenuto errore query

    buongiorno a tutti,
    ho uno script automatico in php che preleva dei dati da un csv e carica un db mysql.
    vorrei fare in modo che se la query va in errore mi venga spedita una mail di notifica.
    grazie in anticipo a tutti!

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Su tutte le query che effettui esegui un controllo, le esegui così:

    Codice PHP:
    if ( ! mysqli_query(....) )
    {
        
    // è avvenuto un errore sulla query
        // metti qui il codice per inviare un'email


  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    168
    ciao Alha e intanto grazie

    ho provato il tuo codice e non dando errore la query tutto fila liscio, ma se creo un errore nella query ed il codice si blocca ovviamente non arrivo a eseguire il tuo controllo sulla query... è li il mio problema.
    forse mi sono spiegato male
    grazie

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Allora prova così
    Codice PHP:
    try
    {
        
    // qui la query
    }
    catch ( 
    Exception $e )
    {
        
    // qui l'invio dell'email


  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    168
    niente... o la query va liscia o da errore e non manda la mail e si incastra mel mentre...
    ho fatto cosi
    try
    {
    $queryupdate = mysql_query($sqlupdate) or die(mysql_error());
    }
    catch ( Exception $e )
    {
    include("mail.php");
    }
    e cosi

    try
    {
    $sqlupdate = "update bp set codice='$csv_codice'"
    $queryupdate = mysql_query($sqlupdate) or die(mysql_error());
    }
    catch ( Exception $e )
    {
    include("mail.php");
    }
    se ti viene in mente altro..

  6. #6
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    temo che se metti "or die()" dopo l'esecuzione della query, la email non la manderai mai

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Ah, ma tu metti sempre or die()?

    Ovvio allora che poi il codice non va avanti, die() blocca l'esecuzione di tutto ciò che segue.

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    forse, e dico forse, potresti mettere una tua funzione personalizzata di invio email nel comando "or die()", anche se non mi piace molto come idea

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2001
    Messaggi
    168
    sorry tolto il die funziona...ovviamente!

    queste due if hanno la stessa valenza?
    if (($queryupdate=='') && ($queryinsert=='')){include("mail.php");}
    if ( !mysql_query($sqlupdate) && !mysql_query($sqlinsert) ){include("mail.php");}
    grazie a tutti Voi!

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.