• User

    Semplice condizione

    Salve a tutti!
    Scusate per la bananle richiesta ma faro tesoro di tutte queste nuove info sul PHP.

    Recuper i dati dal db con la seguente query:
    [PHP]
    $query_limit = mysql_query("SELECT id, titolo_foto, categoria, urlimmagine FROM foto_gallery order by categoria ASC LIMIT $primo, $per_page ");
    [/PHP]

    poi mi stampo i dati:
    [PHP]
    while($results = mysql_fetch_array($query_limit)) {
    [/PHP]

    adesso, il mio " . $results['categoria'] . " è un valore numerico a cui vorrei associare una descrizione

    es:
    valore 1 = Infissi
    valore 2 = Porte
    valore 3 = Accessori
    valore 4 = Portfolio

    sicuramente devo costruirmi una condizione, ma in asp farei così:
    [PHP]
    <% if rs("categoria") = "1" then
    strCategoria = "infissi"
    end if%>

    <% if rs("categoria") = "2" then
    strCategoria = "Porte"
    end if%>
    [/PHP]
    etc etc, ma ho letto che in php non esiste la finzione end if
    come mi sbrigo da questa situazione?

    Grazie


  • ModSenior

    Ciao,
    endif esiste anche in php, ma vengono usate le parentesi che consentono una miglior leggibilità del codice.
    Devi semplicemente fare cosi:
    [php]
    <?php
    if(CONDZIIONE)
    {
    }
    ?>
    [/php]Con endif:
    [php]
    <?php
    if(CONDZIIONE):
    endif;
    ?>
    [/php]


  • User

    Qualcuno puoi darmi una mano..
    come scrivo bene questa condizione??

    if $results['categoria'] = 1 $categoria=Porte
    if $results['categoria'] = 2 $categoria=infissi
    if $results['categoria'] = 3 $categoria=Accessori

    Grazie 1000 per la pazienza!


  • ModSenior

    Cosi:
    [php]
    if $results['categoria'] == 1) $categoria='Porte';
    [/php]

    Ti consiglio di leggere la guida che trovi qui.


  • User

    Ottimo link grazie... lo terrò molto presente!

    Comunque ho provato come mi hai suggerito, ma mi va in errore..
    Ecco cosa ho:
    [php]
    $query_limit = mysql_query("SELECT id, titolo_foto, categoria, urlimmagine, immagine FROM foto_gallery order by categoria ASC LIMIT $primo, $per_page ");
    while($results = mysql_fetch_array($query_limit)) {

    if $results['categoria'] == 1) $nome_categoria='Accessori';

    echo " <tr>\n ";
    echo "<td width='300'><p>$nome_categoria</p></td>\n ";
    [/php]Errore alla linea: if $results['categoria'] == 1) $nome_categoria='Accessori';
    [php]
    Parse error: syntax error, unexpected T_VARIABLE, expecting '(' in /home.....
    [/php]Dove sbaglio?


  • ModSenior

    Ho dimenticato di aprire una parentesi:
    [php]
    if($results['categoria'] == 1) $nome_categoria='Accessori';
    [/php]


  • User

    @mcmmultimedia said:

    [...]

    Risolto... mancava la parentesi iniziale, ovvero:
    if $results['categoria'] == 1) $nome_categoria='Accessori';
    if ($results['categoria'] == 1) $nome_categoria='Accessori';

    bye