Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    87

    Query con join e estrapolazione dei dati

    Raga sto motore di ricerca si sta rivelando piu tosto di quanto pensassi, ho un due tabelle:

    codice:
    tabella utenti:    
    campi ( id, nome, cognome, citta, regione, data_nascita, data_registrazione, data_ultima_modifica, email, password )
    
    tabella annunci_attivi:
    campi (id, id_utente, data_inserimento, categoria, titolo, descrizione, prezzo, nome_foto, dimensione_foto)
    ho un form con un campo text che preleva la parola chiave e 3 campi select obbligatori

    Codice PHP:
    <form name="cerca_annunci" action="cerca_annunci.php" method="post" 
    <
    input type="text" name="parola_annuncio" size="40" /> 
    <
    select name="categoria" >..............</select
    <
    select name="modprovincia" 
    <
    option value="Tutte le provincie">Tutte le provincie</option
    <
    option value="agrigento">Agrigento</option
    ...... 
    </
    select
    <
    select name="modregione" 
    <
    option value="Tutta Italia">Tutta Italia</option
    <
    option value="abruzzo">Abruzzo</option
    ...... 
    </
    select
    <
    input name="cerca_annuncio" type="submit" value="  cerca" title="cerca annuncio" width="89" height="17">         
    </
    form
    e fin qui ci siamo, i problemi li incontro quando mi trovo nella pagina:
    cerca_annunci.php

    ecco il codice

    Codice PHP:
    //ottieni risultati dal post 
        
    $parola_annuncio mysql_real_escape_string($_GET['parola_annuncio']); 
        
    $categoria_annuncio mysql_real_escape_string($_GET['categoria']); 
        
    $citta_annuncio mysql_real_escape_string($_GET['modprovincia']); 
        
    $regione_annuncio mysql_real_escape_string($_GET['modregione']); 

        
    //situazione in cui tutti i campi del form vengono compilati 
        
    $query_cerca_annunci mysql_query("SELECT annunci_attivi.id_utente, annunci_attivi.titolo, annunci_attivi.descrizione,     annunci_attivi.categoria, MATCH(annunci_attivi.titolo, annunci_attivi.descrizione, annunci_attivi.categoria)  
        AGAINST('+
    $regione_annuncio +$citta_annuncio +$categoria_annuncio $parola_annuncio' IN BOOLEAN MODE)  
        as score FROM annunci_attivi  
        INNER JOIN utenti ON annunci_attivi.id_utente = utenti.id 
        WHERE MATCH(utenti.citta, utenti.regione) AGAINST('+
    $regione_annuncio +$citta_annuncio +$categoria_annuncio $parola_annuncio'  
        IN     BOOLEAN MODE) ORDER BY score DESC"
    ); 

        
    //se la query funziona 
            
    if($query_cerca_annunci){ 
                
    $conta_righe_annunci_trovati mysql_num_rows($query_cerca_annunci); 
             
                if(
    $conta_righe_annunci_trovati 0){ 
             
                    
    $id_utenti_annunci = array(); 
                    
    $id_annunci = array(); 
                    
    $categorie_annunci = array(); 
                    
    $prezzi_annunci = array(); 
                    
    $citta_annunci = array(); 
                    
    $regioni_annunci = array(); 
                    
    $titoli_annunci = array(); 
                    
    $descrizioni_annunci = array(); 
         
                    
    $i 0
                    while(
    $rows_annunci_trovati mysql_fetch_array($query_cerca_annunci)){ 
                        
    $i++; 
                        
    $id_annunci[$i] = $rows_annunci_trovati['id']; 
                        
    $categorie_annunci[$i] = $rows_annunci_trovati['categoria']; 
                        
    $prezzi_annunci[$i] = $rows_annunci_trovati['prezzo']; 
                        
    $citta_annunci[$i] = $rows_annunci_trovati['citta']; 
                        
    $regioni_annunci[$i] = $rows_annunci_trovati['regione']; 
                        
    $titoli_annunci[$i] = $rows_annunci_trovati['titolo']; 
                        
    $descrizioni_annunci[$i] = $rows_annunci_trovati['descrizione'];                                         
                    } 
                     
                echo 
    $citta_annunci[1]; 
                 
                }else{ 
                    echo 
    'Nessun annuncio trovato'
                } 
                 
            }else{ 
                echo 
    'La query non è andata a buon fine'
            } 
    non so dirvi se la query è scritta bene so che non mi manda piu nel ramo else dove stampavo

    Codice PHP:
    echo 'La query non è andata a buon fine'
    so però che adesso mi da i seguenti errori:

    Codice PHP:
    NoticeUndefined indexid in C:EasyPHPwwwaaacerca__annunci.php on line 76 

    Notice
    Undefined indexcategoria in C:EasyPHPwwwaaacerca_annunci.php on line 77 

    Notice
    Undefined indexprezzo in C:EasyPHPwwwaaacerca_annunci.php on line 78 

    Notice
    Undefined indexcitta in C:EasyPHPwwwaaacerca_annunci.php on line 79 

    Notice
    Undefined indexregione in C:EasyPHPwwwaaacerca_annunci.php on line 80 

    Notice
    Undefined indexid in C:EasyPHPwwwaaacerca_annunci.php on line 76 

    Notice
    Undefined indexcategoria in C:EasyPHPwwwaaacerca_annunci.php on line 77 

    Notice
    Undefined indexprezzo in C:EasyPHPwwwaaacerca_annunci.php on line 78 

    Notice
    Undefined indexcitta in C:EasyPHPwwwaaacerca_annunci.php on line 79 

    Notice
    Undefined indexregione in C:EasyPHPwwwaaacerca_annunci.php on line 80 

    Notice
    Undefined indexid in C:EasyPHPwwwaaacerca_annunci.php on line 76 

    Notice
    Undefined indexcategoria in C:EasyPHPwwwaaacerca_annunci.php on line 77 

    Notice
    Undefined indexprezzo in C:EasyPHPwwwaaacerca_annunci.php on line 78 

    Notice
    Undefined indexcitta in C:EasyPHPwwwaaacerca_annunci.php on line 79 

    Notice
    Undefined indexregione in C:EasyPHPwwwaaacerca_annunci.php on line 80 
    credo che quando si effettua una join non si estrapolano i dati in questo modo

    Codice PHP:
    while($rows_annunci_trovati mysql_fetch_array($query_cerca_annunci)){  
                        
    $i++;  
                        
    $id_annunci[$i] = $rows_annunci_trovati['id'];  
                        
    $categorie_annunci[$i] = $rows_annunci_trovati['categoria'];  
                        
    $prezzi_annunci[$i] = $rows_annunci_trovati['prezzo'];  
                        
    $citta_annunci[$i] = $rows_annunci_trovati['citta'];  
                        
    $regioni_annunci[$i] = $rows_annunci_trovati['regione'];  
                        
    $titoli_annunci[$i] = $rows_annunci_trovati['titolo'];  
                        
    $descrizioni_annunci[$i] = $rows_annunci_trovati['descrizione'];                                          

    qualcuno sa come fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    87
    up up up, raga non c'è proprio nessuno che può aiutarmi vi prego

  3. #3
    Nel form utilizzi il metodo post e recuperi i dati in get... e che cavolo!!!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    87
    è un errore di copia incolla questo codice lo sto postando da una vita nessuno mi aiuta

    ps: il method è get

  5. #5
    Se posti codice errato come pretendi che le persone possano aiutarti! Per il resto del codice sei sicuro che è lo stesso che ti genera gli errori segnalati? Prova a ricontrollare la query!
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    87
    per favore vi chiedo un'aiuto sono due giorni che chiedo spiegazioni è vero ho sbagliato con il get ed avrò sbagliato in altre parti del codice ma non rispondetemi in questo modo tanto vale non rispondere...dici che c'è un errore nella query puoi aiutarmi?

    Non ho mai creato query con join e non ho mai estratto dei dati da una query, sembra che mysql_fetch:array() non va bene in questo caso

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.