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

Discussione: problema con if

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043

    problema con if

    Se un allievo ha frequentato solo il "Corso Base":

    vorrei che venisse stampato solo il file del corso "Base"

    se invece un allievo ha frequentato entrambi i corsi:

    'tipo_attestato'........'id_allievo'
    Base......................52
    Excellence Base.......52

    vorrei che venisse stampato solo il file del corso "Excellence Base"

    e invece continua a stamparmi sempre quello del "Corso Base", perchè?

    Codice PHP:
    <?php
    if ($row_ses['tipo_attestato']=="Base" && $row_ses['tipo_attestato']!="Excellence Base"){
    ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php
    }
    elseif (
    $row_ses['tipo_attestato']=="Base" && $row_ses['tipo_attestato']=="Excellence Base"){
    ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php
    }
    ?>

  2. #2
    Codice PHP:
    <?php if (($row_ses['tipo_attestato'] == "Base") || ($row_ses['tipo_attestato'] == "Excellence Base")) { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php ?>
    <?php 
    if ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>
    Se anche così non funziona, posta il risultato di questo codice:

    Codice PHP:
    <?php var_dump($row_ses['tipo_attestato']); ?>

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Originariamente inviato da filippo.toso
    Codice PHP:
    <?php if (($row_ses['tipo_attestato'] == "Base") || ($row_ses['tipo_attestato'] == "Excellence Base")) { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php ?>
    <?php 
    if ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>
    Così però mi stampa entrambi i file

  4. #4
    Originariamente inviato da prinzart
    Così però mi stampa entrambi i file
    Codice PHP:
    <?php if ($row_ses['tipo_attestato'] == "Base") { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php } elseif ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Originariamente inviato da filippo.toso
    Codice PHP:
    <?php if ($row_ses['tipo_attestato'] == "Base") { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php } elseif ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>
    Anche così mi stampa entrambi

  6. #6
    Improbabile....

    Codice PHP:

    Base</p>

    <?php $row_ses['tipo_attestato'] = 'Base'?>

    <?php if ($row_ses['tipo_attestato'] == "Base") { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php } elseif ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?> 



    Excellence Base</p>

    <?php $row_ses['tipo_attestato'] = 'Excellence Base'?>

    <?php if ($row_ses['tipo_attestato'] == "Base") { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php } elseif ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>
    In ogni caso si tratta delle basi della sintassi. Se hai problemi con questo tipo di codice ti consiglio di ripassare le basi:

    http://www.php.net/manual/en/language.basic-syntax.php
    http://www.php.net/manual/en/control...res.elseif.php

  7. #7
    se ho ben capito un allievo potrebbe avere entrambi gli attestati. Apparentemente su due record diversi. Se non si scorre il result set $row_ses['tipo_attestato'] non potra' che essere sempre lo stesso.

    Solo nel caso in cui ci sia solo il record "Base" funzionerebbe, mentre l' "Excellence base" come secondo record non verrebbe mai letto.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Ora mi stampa solo il corso base, invece di stamparmi solo l'Excellence.
    Grazie per i link, ora mi vado a studiare quello che c'è scritto.

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2001
    Messaggi
    2,043
    Originariamente inviato da piero.mac
    Se non si scorre il result set $row_ses['tipo_attestato'] non potra' che essere sempre lo stesso.
    e come si scorre il result set

  10. #10
    Originariamente inviato da prinzart
    e come si scorre il result set
    con un ciclo while e mettendo il risultato in un array. Ma sinceramente opterei alla modifica della struttura della tabella. Ogni attestato sovrascrive il precedente invece di creare un nuovo record anche perche' mi pare abbastanza scontato che ci sia una successione della referenza definita in tipo di attestato. In altre parole se uno ha Excellence sicuramente ha gia' la Base, e se ha la Base non puo' essere un campo vuoto. In pratica con la query iniziale di filippo.toso risolveresti il tuo problema.

    Codice PHP:
    <?php if ($row_ses['tipo_attestato'] == "Base" || $row_ses['tipo_attestato'] == '' ) { ?>
    [url="../file_corsi/corso_base.exe"]<span class="testo_nero_bold">corso_base.exe</span>[/url]
    <?php } elseif ($row_ses['tipo_attestato'] == "Excellence Base") { ?>
    [url="../file_corsi/corso_base_excellence.exe"]<span class="testo_nero_bold">corso_base_excellence.exe</span>[/url]
    <?php ?>
    ma toglimi una curiosita' tu richiameresti un file .exe sperando che qualcuno lo esegua????

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.