Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: if else

  1. #1

    if else

    Salve ragazzi, ho questa funzione, e vorrei che se non si verifica deve dire che non è presente alcun documento, quindi una semplice istruzione if else, però non capisco perchè non esegue l'else, cioè mi da una pagina bianca, ecco il codice della funzione:

    Codice PHP:
    function doc_personali($tipo$username)
    {

    $query "SELECT count(*) from doc_utenti_inviati WHERE username = '$username' AND tipo = '$tipo'";
    $riga mysql_query ($query);

    $indice 1;

    if(
    $indice<=$riga)
      {
    $q "SELECT * FROM doc_utenti_inviati WHERE username = '$username' AND tipo = '$tipo'";
    $sql mysql_query($q) or die (mysql_error ());
    while (
    $row mysql_fetch_array($sql)){
     
    $doc $row['documento'];
      
    $data_doc $row['data_doc'];
      
    $ora_doc $row['ora_doc'];

    echo <<<EOHTML





    <table width="510" border="0" align="center">
                    <tr>
                      <td><h2>[b]Le tue dichiarazioni[/b]</h2>
                        <fieldset>
                          <legend>[b]Nota Documenti[/b]</legend>
                          

    Per vedere i tuoi documenti clicca sul link posto sul nome del documento</p>

                        </fieldset>
                        

                        

      
                      <table width="507" border="0" align="center">
                          <tr>
                            <td>[img]images/punto.png[/img] [url="/angelo/
    $doc"]{$doc}[/url] inviato il {$data_doc} alle ore {$ora_doc}</td>
                          </tr>
                        </table>
                        

    </p></td>
                    </tr>
                  </table>
    EOHTML;

    $indice++;
    }
    }else{
    echo 
    "Nessun Documento";
    }

    Spero di essere stato abbastanza chiaro, grazie

  2. #2
    Utente di HTML.it L'avatar di tapu
    Registrato dal
    May 2008
    Messaggi
    885
    return "stringa_che _vuoi";

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    non ho "analizzato" il codice più di tanto... se il ramo "if" funziona bene prova a mettere come primi comandi del ramo "else":
    Codice PHP:
    var_export($index);var_export($riga);exit; 
    e vedi un po'... è possibile che magari in realtà l'esecuzione vada comunque nel ramo IF, ma non venga eseguito il WHILE... risultato: pagina bianca.

  4. #4
    ho provato in entrambi i modi, ma niente, come posso risolvere?

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    se per "niente" intendi ancora pagina bianca allora mi sa che ho ragione: probabilmente il ramo else NON viene eseguito... prova a stampare le variabili PRIMA di IF

  6. #6
    mi correggo a quanto scritto precedentemente,secondo me l'IF non viene interpretato e penso che il problema stia in $riga.
    mettendo così' dovrebbe andar bene:
    $res = mysql_query ($query);

    $riga=mysql_num_rows($res);

  7. #7
    ho provato ma niente, l'if viene interpretato, perchè se la condizione viene soddisfatta la funzione viene eseguita, però il problema è che se la condizione non viene eseguita deve scrivere che non è stata eseguita.
    Grazie

  8. #8
    bisogna analizzare il codice scendendo all'errore,allora prova a stampare dentro il while una delle tre variabili con semplici echo e vedi se c'e' valore:

    Codice PHP:
    function doc_personali($tipo$username


    $query "SELECT count(*) from doc_utenti_inviati WHERE username = '$username' AND tipo = '$tipo'"
    $riga mysql_query ($query); 

    $indice 1

    if(
    $indice<=$riga
      { 
    $q "SELECT * FROM doc_utenti_inviati WHERE username = '$username' AND tipo = '$tipo'"
    $sql mysql_query($q) or die (mysql_error ()); 
    while (
    $row mysql_fetch_array($sql)){ 
    $doc $row['documento']; 
      
    $data_doc $row['data_doc']; 
      
    $ora_doc $row['ora_doc'];
    echo 
    $doc;
     

    $indice++; 

    }else{ 
    echo 
    "Nessun Documento"



  9. #9
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    forse non mi sono spiegato: sto ipotizzando che quando tu pensi venga eseguito l'ELSE, in realtà viene eseguito l'IF, ma non il WHILE, per cui non viene stampato nulla

  10. #10
    forse non mi sono spiegato: sto ipotizzando che quando tu pensi venga eseguito l'ELSE, in realtà viene eseguito l'IF, ma non il WHILE, per cui non viene stampato nulla
    vorrei risalire all'errore in questo modo,ho fatto una simulazione del suo problema in locale e ho postato il codice ,visto che l'IF e lo dici pure tu viene eseguito,solo per verifica.
    dopodiche' potrei dire dove sta il problema!

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.