Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Select e passaggio di variabili null

    Ciao a tutti,
    vorrei fare un piccolo script di ricerca che permette di restituire dei risultati anche se nel form di ricerca è valorizzato 1 solo campo dei 4 disponibili.

    Ho un form html nella pagina cerca.php con 4 campi in input: nome, cognome, libro, nazione.
    Tramite il metodo POST, vengono passati i dati alla pagina risultati.php

    La pagina risultati.php è così costituita:
    Codice PHP:

    <?php
    error_reporting
    (0);

    $nome $_REQUEST['nome'];
    $cognome $_REQUEST['cognome'];
    $libro $_REQUEST['libro'];
    $nazione $_REQUEST['nazione'];

    include(
    "connect.php");
    $result mysql_query("
    SELECT id, 
           libro,
           cognome,
           stato,
           nome
      FROM anagrafica
      WHERE nome = IFNULL('
    $nome',nome)
      AND cognome = IFNULL('
    $cognome',cognome)
      AND libro = IFNULL('
    $libro',libro)
      AND nazione = IFNULL('
    $nazione',nazione)
                            "
    );
    $rows=mysql_num_rows($result);
    ?>
    <html>
    <head>
    .... html code ....

    <?php
    $i
    =0;
    while (
    $i $rows) {
    $nome=mysql_result($result,$i,"nome");
    $libro=mysql_result($result,$i,"libro");
    $cognome=mysql_result($result,$i,"cognome");
    $nazione=mysql_result($result,$i,"nazione");
    ?>
    ... costruzione tabella html....
    Il problema è che quando nel form html della pagina cerca.php, valorizzo solo il campo nome = ANDREA, la query retituisce null.

    Ho cercato online una alternativa equivalente alla funzione NVL di Oracle e tra i risultati, quella più accreditata è la IFNULL come infatti ho usato nella query, ma a questo punto non so se la query sia scritta correttamente, sopratutto nella WHERE condition.

    Potreste dirmi come posso risolvere i problema?


    Grazie

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Prova con live e or (con and tutti i parametri sono necessari)
    WHERE nome like '$nome' or cognome like '$cognome' or libro like '$libro' or nazione like '$nazione'");
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

Tag per questa discussione

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.