Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 19 su 19
  1. #11
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    grazie Sky funziona alla grande.
    lory

  2. #12
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    Ciao Sky,

    tu hai costruito questa funzione:

    Codice PHP:
    $function create_function('$servizio''return "$servizio = 1";'); 
    cosa succede se voglio aggiungere un servizio che non ha valore numerico (1 o 0) ma formato testo (che può essere variabile) del tipo: cercami in lombardia--> Milano--> agriturismo [], vini[], degustazioni[]; i valori di vini e degustazioni sono 0 o 1 mentre agriturismo o altra tipologia di struttura ha come valore [agriturismo] ecc. ?

    Lory

  3. #13
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    Ciao Sky,

    ho risolto.... ho messo una select e aggiunto una riga

    Codice PHP:
    if ($struttura != 'tutte'
    $condizioni_query[] = "struttura = '$struttura'"
    sembra funzionare correttamente....

    una curiosità: hai usato questa condizione:

    Codice PHP:
    $condizioni_query += array_map($function$_POST['servizio']); 
    perchè += ?

    Lory

  4. #14
    Originariamente inviato da alcio74
    Beh.... Innanzi tutto, io metterei la action nel tag form ed anche l'enctype (enctype="multipart/form-data", ad esempio).
    Per seconda cosa, visto che non specifichi cosa intendi per "non riesco a far funzionare la ricerca condizionata", andrei a vedere se le variabili arrivano allo script.

    Codice PHP:
    $regione $_POST['regioni'];
    $servizio $_POST['servizio'];

    echo 
    "
    Regione Selezionata: 
    $regione

    "
    ;
    foreach(
    $servizio AS $rigo) {
    echo 
    $rigo."
    "
    ;
    }

    exit; 
    Fatto questo controllino, mi preoccuperei di continuare con le query e tutto il resto dello script.

    Annotazione.
    L'utilizzo dell'array super-globale $_REQUEST è sconsigliato e deprecabile per motivi di sicurezza!
    scusate ma $_request non è sicuro?

    la cosa mi preoccupa un pò, potrei avere qualche delucidazione

    ciao grazie

  5. #15
    Moderatore di Off Topic, Kickstarter e XML L'avatar di Sky
    Registrato dal
    Jul 2000
    residenza
    Roma
    Messaggi
    1,053
    Originariamente inviato da lorymacri

    una curiosità: hai usato questa condizione:

    Codice PHP:
    $condizioni_query += array_map($function$_POST['servizio']); 
    perchè += ?

    Lory
    Perché array_map() restituisce un array e con l'operatore + si possono unire due o più array.
    Con quel codice l'array restituito dalla funzione array_map() viene unito a quello presente in $condizioni_query.

    Anche se in questo caso non era proprio necessario dato che $condizione_query è sì un array, ma vuoto
    Lo Stato deve dare ai cittadini, come diritto, ciò che la mafia dà come favore.
    Carlo Alberto dalla Chiesa

    Facebook | Twitter | Last.fm | LinkedIn | Quora

  6. #16
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    Originariamente inviato da Sky
    Al loro posto metti queste:

    Codice PHP:
    if ($regioni)
      
    $condizioni_query[] = "regioneazienda = '$regioni'";

    if (
    $provincia != 'tutte')
      
    $condizioni_query[] = "provincia = '$provincia'"
    Buon proseguimento, ciao
    Ciao ....

    finalmente ho sistemato lo script come serviva... ora ho il problema per la paginazione dei dati... non riesco a gestire l'array (senza sessione lo script funziona benissimo) quando metto il tutto in sessione mi da questi warning:

    Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/script/ricerca/02-ricavanzata/search2.php on line 50

    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/www/script/ricerca/02-ricavanzata/search2.php on line 52

    Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/script/ricerca/02-ricavanzata/search2.php on line 74

    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/script/ricerca/02-ricavanzata/search2.php on line 76

    però non capisco perchè...



    Codice PHP:
    <?php

    session_start
    ();

            include(
    'connessione.php');

            
            if(isset(
    $_POST["invia"])){
                
    $_SESSION['regioneazienda']= mysql_real_escape_string($_POST["regioneazienda"]);
                
    $_SESSION['provincia']= mysql_real_escape_string($_POST["provincia"]);
                
    $_SESSION['tipoazienda']= mysql_real_escape_string($_POST["tipoazienda"]);
            }

            echo 
    $_SESSION['regioneazienda'];

            
    $condizioni_query = array();

            
    // Costruiamo le istruzioni SQl per selezionare i record desiderati, basandoci sulle checkbox selezionate
            // Ogni servizio spuntato implicherà la ricerca dei record che hanno il relativo campo settato a 1
                
            
    if (count($_POST['servizio'])) {
                
    $function create_function('$servizio''return "$servizio = 1";');
                
    $condizioni_query array_map($function$_POST['servizio']);
            }

            if (
    $_SESSION['regioneazienda'])
                
    $condizioni_query[] = "regioneazienda='{$_SESSION['regioneazienda']}'";
        
            if (
    $_SESSION['provincia'] != 'tutte')
                
    $condizioni_query[] = "provincia='{$_SESSION['provincia']}'";

            if (
    $_SESSION['tipoazienda'] != 'tutte')
                
    $condizioni_query[] = "tipoazienda='{$_SESSION['tipoazienda']}'";

            
    // Costruiamo la clausola WHERE solo se sono stati selezionati i campi di ricerca
            
    if ($condizioni_query)
                
    $clausola_where 'WHERE 'implode(' AND '$condizioni_query);


            
    //SET THE ROWS FOR EVERY PAGE
            
    $page_size 3;
               

            
    //COMPOSE QUERY
            
    $sql "SELECT
                         CEILING(count(1) / "
    .$page_size.") AS count
                        FROM 
    $table02 $clausola_where";

            
    //EXECUTE THE QUERY
            
    $result mysql_query($sql$con);

            if (
    $row mysql_fetch_assoc($result))
                {
                
    $page_count $row["count"];
                }


            
    //CHECK IF PAGE VARIABLE IS AVAILABLE AND CALCULATE THE LIMIT
            
    if (isset($_GET["page"]))   
                {
                
    $page_no $_GET["page"];
                
    $limit =  ($page_no $page_size) - $page_size;
                }
            else
                {
                
    $limit =  0;
                }

            
    //COMPOSE QUERY
            
    $sql "SELECT * FROM $table02 $clausola_where LIMIT ".$limit .", ".$page_size;

                      
            
    //EXECUTE THE QUERY
            
    $result mysql_query($sql$con);

            if (
    mysql_num_rows($result) == 0) { 
                   echo 
    "Nessun risultato trovato!"
            } else { 
                        while(
    $row mysql_fetch_array($result)) {
                    
                        
    // Your while loop here
                        
    $regioneazienda$row['regioneazienda'];
                        
    $provincia$row['provincia'];
                        
    $tipoazienda$row['tipoazienda'];

                        echo 
    "$regioneazienda $provincia $tipoazienda";
                        echo 
    "
    "
    ;

                        
                        }
                        
                        echo 
    "
    "
    ;

                        
    //DISPLAY A LINK TO THE NUMBER OF PAGES
                        
    for ($i 1$i $page_count 1$i++)
                            {
                            print 
    "[url='?page=".$i."']".$i."[/url]  ";
                            }
                   } 
            
    ?>

  7. #17
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    qualche input?

  8. #18
    Originariamente inviato da lorymacri
    qualche input?
    da uno sguardo veloce mi pare che la connessione al db denominata $con non ci sia....

    sbaglio?

  9. #19
    Utente di HTML.it
    Registrato dal
    Jan 2009
    Messaggi
    118
    no se non uso le sessioni funziona regolarmente!!!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.