Visualizzazione risultati 1 fino 8 di 8

Discussione: [PHP e MySQL] Cerca nel sito...

  1. #1
    Guest

    Predefinito [PHP e MySQL] Cerca nel sito...

    Ciao,
    sto cercando di capire come fare una cosa, che mi sermbra alquanto complicata,...
    Tipo: qua sul forum si cerca una parola, (poi credo che venga interrogato il database) che restituisce i link alle varie pagine con quelle parole cercate....
    Che funzioni posso usare per una cosa simile??

  2. #2
    Guest

    Predefinito

    Per fare una cosa del genere il sito deve essere strutturato a dovere, cioè con record che rappresentano articoli, commenti, scritti di qualche genere insomma.

    Se il tuo sito è strutturato in questo modo o lo sarà, allora si può fare. Altrimenti devi adottare un altro sistema (fai qualche ricerca, se ne parla spesso).


    Ciaoooo!

  3. #3
    Guest

    Predefinito

    infatti é per questo che sto chiedendo, sto facendo un sito, saro al massimo al 5% quasi tutta grafica,pochi script per ora, sto cerrcando di capire come posso fare una cosa del genere, nn voglio arrivare alla fine ce ho completato il sito, e ho dimenticato questa cosa...
    la cosa piu complicata che non riesco a capire é come fa a sapere che link prendere per finire in quella pagina!
    Es: cerco nel db, trovo il file e poi come fa il sito a mettermi il link a quella pag??? attraverso l' id??? cioe qualcosa del genere faccio vedere nei risultati: view.php?id=$id cosi che vada sempre nella stessa pag!

  4. #4
    Guest

    Predefinito

    Nel DB non vanno memorizzati i file, ma articoli, commenti, ecc.
    Cioè, hai la sezione articoli nel sito, quella sezione va a pescare nel DB, in una certa tabella, tutti gli articoli, magari ordinati per data.
    Il modulo di ricerca fa esattamente la stessa cosa ma va a pescare quegli articoli che soddisfano i criterci della ricerca, cioè quelli che al loro interno contengono quella parola o quelle parole.

    Tutto sta nella query, ad esempio:

    Cerca una sola parola:
    SELECT * FROM articoli WHERE testo LIKE '%parola%'

    Cerca due parole, entrambe devono essere presenti:
    SELECT * FROM articoli WHERE testo LIKE '%parola%' AND testo LIKE '%altraparola%'

    Cerca due parole, possono essere presenti anche solo una delle due:
    SELECT * FROM articoli WHERE testo LIKE '%parola%' OR testo LIKE '%altraparola%'

    Queste sono le basi, ovviamente ci sono mille accorgimenti e migliorie che possono essere implementate.

    Sul web dovrebbero esserci qualche guida a proposito.


    Ciao!!!!!!

  5. #5
    Guest

    Predefinito

    Grazie mille per i chiarimenti,
    allora dopo la ricerca faccio un elenco dei titoli degli articoli con i vari link cosi: view.php?id=$id, nn sembra nemmeno piu molto difficile!!! Grazie...

    PS: nn chiudete il topic, potrei aver ancora bisogno...
    PPS: Per file intendevo vari dati... Nn sapevo come esprimermi!!

    EDIT: si puo fare qualcosa del genere:

    $cerca = $_POST[cerca];

    $query = "SELECT * FROM articoli WHERE descrizione LIKE '$cerca'";

    ho provato a cercare un parlola che si trovava in db ma niente...!!!
    come mai?
    Grazie mille dell' aiuto!!!

    EDIT; scusate, al posto di fare edit o risposto...
    Ultima modifica di debug : 04-09-2007 alle ore 13.06.07

  6. #6
    Guest

    Predefinito

    $cerca = $_POST['cerca'];
    $query = "SELECT * FROM articoli WHERE descrizione LIKE '%$cerca%'";


    Ciaooooo!

  7. #7
    Guest

    Predefinito

    ah, ok bisogna mettere sempre %??? come mai?

  8. #8
    Guest

    Predefinito

    E' il carattere jolly di SQL.
    Se il record che cerchi è composto da più parole devi usare quel carattere per cercare una parola fra tutte quelle presenti.


    Ciaooooo!!!!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •