Visualizzazione dei risultati da 1 a 9 su 9

Discussione: echo die()

  1. #1
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489

    echo die()

    il seguente codice funziona bene quando ci sono dati presenti nella tabella di riferimento:

    Codice PHP:
    $result_2 =mysql_query($sql_2);

    if(
    mysql_num_rows($result_2) == 0)

        {
        
            echo die(
    "Spiacente, nessun record trovato! 
    "
    );

            } 
    else
    {
    while(
    $rowmysql_fetch_assoc($result_2))
        {
    $percentuale_1 = ($row['frequenza'] * 100)/500;
    $percentuale_2 = ($row['frequenza'] / $row['tot'])*100 ;
    $percentuale_2 round($percentuale_22);


    echo 
    "l'allievo ha frequentato " $row['frequenza'] . " ore, su " $row['monteore'] . " ore del corso. Pari al " $percentuale_1 ."%
    "  
    ;
    echo 
    "l'allievo ha frequentato " $row['frequenza'] . " ore, su " $row['tot'] . " ore svolte. Pari al " $percentuale_2 ."%"  ;

        }

    ma quando svuoto la tabella, quindi zero rows, dovrei avere l'output soft previsto "Spiacente, nessun record trovato!" e morire li. invece ho questo seguente messaggio:

    Codice PHP:
    WarningDivision by zero in D:.....\ricerca_dati_allievo.php on line 107 
    l
    'allievo ha frequentato ore, su ore del corso. Pari al 0%
    l'
    allievo ha frequentato oresu ore svoltePari al 0
    la riga 107 è la seguente è:
    Codice PHP:
    $percentuale_2 = ($row['frequenza'] / $row['tot'])*100 
    perchè non si ferma a...

    Codice PHP:
    echo die("Spiacente, nessun record trovato! 
    "
    ); 
    dove sbaglio???

  2. #2
    inizia a scrivere:

    die("Spiacente, nessun record trovato!
    ");

    die non vuole l'echo.

    e vediamo se così funziona
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  3. #3
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    ciao Maurizio...
    ho visto un errore mio nello scrivere sul post...
    ma non funziona..
    ho provato anche con
    Codice PHP:
    exit(); 
    ma nisba

  4. #4
    prova a sostituire

    if(mysql_num_rows($result_2) == 0)

    con

    if(!mysql_num_rows($result_2))
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  5. #5
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    ho tentato anche prima ...
    exit;

    e adesso ma niente,,,,


  6. #6
    ma sei certo che row[tot] corissponda a mysql_num_rows?

    Posta la query $sql2
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  7. #7
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    a dirti la verità la condizione " if " l'ho inserita dopo proprio per evitare l'output di errore con l'indirizzo...., ma il risultato è stato lo stesso.... quindi nn penso. comunque:
    Codice PHP:
    $sql_2 "SELECT monteore, sum( frequenza ) AS frequenza, sum( ore ) AS tot 
    FROM allievi 
    JOIN frequenza ON allievi.id = frequenza.allievoid 
    LEFT JOIN lezioni ON frequenza.materiaid = lezioni.id_lez 
    WHERE allievi.id ='
    $idallievo'"
    $result_2 =mysql_query($sql_2); 

  8. #8
    adesso, non ho guardato tutta la query. ma $row[tot] è la somma delle ore, mysql_num_rows è un'altra cosa.

    Se vuoi verificare che la somma delle ore non sia zero, metti quel valore nella condizione

    Codice PHP:
    while($rowmysql_fetch_assoc($result_2))
        {

    // qui -> if($row['tot'] == 0) ... die ...
    $percentuale_1 = ($row['frequenza'] * 100)/500;
    $percentuale_2 = ($row['frequenza'] / $row['tot'])*100 ;
    $percentuale_2 round($percentuale_22); 
    PHP LEARN - Guide, tutorial e articoli sempre aggiornati
    NUOVO: standardLib; il potente framework PHP é ora disponibile
    *******************************************
    Scarica oggi la tua copia di MtxEventManager

  9. #9
    Utente di HTML.it L'avatar di ttcc
    Registrato dal
    Dec 2008
    Messaggi
    489
    dopo la tua riflessione stavo riscrivendo la parte di codice...
    e mi sono accorto che il "cerchio non quadrava"
    ero partito in tromba con mysql_num_ ..... senza pensare.... era logico, sono gli errori degli
    dei pivellini
    grazie

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.