Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110

    - - - - La funzione "Cerca parola nel DB" - - - -

    nella pagina "cerca.htm" fornisco un campo form in cui un utente sceglie la parola da ricercare nel contenuto di una tabella del DB, il valore di quel campo lo passo poi a qst script:

    function getQueryStrFromPhrases($phrases_str, $sql_field, $insert_percent) {
    $sql_query_string = "";

    $phrases_str = str_replace(",", " ", $phrases_str);
    $phrases_str = str_replace(".", " ", $phrases_str);
    $phrases_str = str_replace(";", " ", $phrases_str);
    $phrases_str = str_replace(":", " ", $phrases_str);
    $phrases_str = str_replace("+", " ", $phrases_str);
    $phrases_str = str_replace("(", " ", $phrases_str);
    $phrases_str = str_replace(")", " ", $phrases_str);
    $phrases_str = addslashes($phrases_str);

    $phrases_str = trim($phrases_str);
    $sql_field = trim($sql_field);

    if (!empty($phrases_str) && !empty($sql_field)) {
    $percent = "";
    if ($insert_percent)
    $percent = "%";

    $phrases_str .= " ";
    $sql_query_string = " (";
    $arrWords = explode(" ", $phrases_str);

    $print_AND = false;
    for($i=0; $i<sizeof($arrWords)-1; $i++) {
    $trimmed_str = trim($arrWords[$i]);
    if (!empty($trimmed_str)) {
    if ($print_AND)
    $sql_query_string .= " AND ";

    $sql_query_string .= "SELECT * FROM temi WHERE ".$sql_field." LIKE '".$percent.$arrWords[$i].$percent."'";
    $print_AND = true;
    }
    }
    unset($i);
    unset($print_AND);
    unset($percent);
    unset($trimmed_str);
    unset($arrWords);

    $sql_query_string .= " ) ";
    }

    return $sql_query_string;
    }

    cosi facendo io ottengo come risultato una cosa del tipo:
    //$cerca variabile passata dal form
    //$db è il nome della tabella

    $query = getQueryStrFromPhrases($cerca, $db , true);

    //questo è quello che mi dà $query --- ( temi LIKE '%ciao%' ) ---

    ora come faccio ad inserirla nella query SQL per far si ke un ciclo mi permetta poi di estrarre i risultati???
    ma poi riuscirò ad inserire la paginazione di Guidoz????

  2. #2
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    mi correggo nel punto

    il risultato della funzione è
    (SELECT * FROM temi WHERE temi LIKE '%parola ricercata%' )

  3. #3
    Utente di HTML.it L'avatar di grendy
    Registrato dal
    Aug 2003
    Messaggi
    338
    Originariamente inviato da HammerFist
    mi correggo nel punto

    il risultato della funzione è
    (SELECT * FROM temi WHERE temi LIKE '%parola ricercata%' )
    hai una tabella di nome 'temi' con un campo di nome 'temi'?
    «Sono le azioni che contano. I nostri pensieri, per quanto buoni possano essere, sono perle false fintanto che non vengono trasformati in azioni. Sii il cambiamento che vuoi vedere avvenire nel mondo». (Mahatma Gandhi)

  4. #4
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    in pratica ho una DB di nome "archivio" e una tabella di nome "temi", all'interno della tabella temi ho 12 campi,

    DB ->Archvio

    tebella -> temi

    campi:
    id
    cartella
    nome_tema
    colore
    tipologia
    flash
    html
    psd
    fla
    png
    note
    img

  5. #5
    Originariamente inviato da HammerFist
    mi correggo nel punto

    il risultato della funzione è
    (SELECT * FROM temi WHERE temi LIKE '%$parola ricercata%' )
    lì devi mettere il nome del campo in cui vuoi cercare, e ricorda di mettere il dollaro davanti al nome della variabile...
    Meglio essere folle per proprio conto che saggio con le opinioni altrui.
    F. Nietzsche

  6. #6
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    ok grazie, infatti adesso mi fà la ricerca , vorrei sapere un'altra cosa, avete notato ke nel mio db ci sono campi chiamati, fla, psd, png, html, flash... ora questi conterranno un 1 se per esempio il tema è in flash e uno 0 se non lo è e poi ci sono campi tipo "colore" che contiene per esempio "rosso", "verde" ecc, io vorrei fare in modo che un utente possa scegliere per esempio di visualizzare i temi flash rossi, oppure temi html verdi e che hanno il png, cosa mi consigliate? devo cercare nel forum? ma cosa?

  7. #7
    E' molto semplice, devi fare una query di questo tipo:

    SELECT * FROM temi WHERE colore = '$colore' AND fla = '1' AND png = '0'
    ...e così via...

    Ovviamente fai un form come si deve, dove l'utente inserirà i parametri da ricercare e selezionerà le caratteristiche (html - png - fla - ecc...).
    Meglio essere folle per proprio conto che saggio con le opinioni altrui.
    F. Nietzsche

  8. #8
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    ok io adesso ci provo e vedo cosa riesco a far venire fuori... ti ringrazio!

  9. #9
    Utente di HTML.it L'avatar di HammerFist
    Registrato dal
    May 2005
    Messaggi
    1,110
    io non ci sto mica capendo come fare, pechè più vado avanti e più mi fermo...
    Ho qst pagina html che dovrebbe mandare la richiesta ad una pagina chiamata cercain.php...

    <html>
    <head>
    <title>Documento senza titolo</title>
    </head>

    <body>
    <table width="800" border="0" align="center">
    <tr>
    <td height="116"><form name="form2" method="post" action="cercain.php">


    </p>
    <table width="500" border="0" align="center">
    <tr>
    <td width="259">Ricerca per titolo della cartella </td>
    <td width="231"><input name="nome_cartella" type="text" id="nome_cartella"></td>
    </tr>
    <tr>
    <td>Ricerca per contenuto delle note</td>
    <td><input name="testo_note" type="text" id="Testo_note"></td>
    </tr>
    </table>


    Ricerca per tipologie e allegati:



    </p>
    <table width="500" border="0" align="center">
    <tr>
    <td width="216">cerca i temi in: </td>
    <td width="76">Html</td>
    <td width="194"><input name="html" type="checkbox" id="html" value="1"></td>
    </tr>
    <tr>
    <td></td>
    <td>Flash</td>
    <td><input name="flash" type="checkbox" id="flash" value="1"></td>
    </tr>
    <tr>
    <td></td>
    <td></td>
    <td></td>
    </tr>
    <tr>
    <td> aventi come allegati: </td>
    <td>Fla</td>
    <td><input name="fla" type="checkbox" id="fla" value="1"></td>
    </tr>
    <tr>
    <td></td>
    <td>Png</td>
    <td><input name="png" type="checkbox" id="png" value="1"></td>
    </tr>
    <tr>
    <td></td>
    <td>Psd</td>
    <td><input name="psd" type="checkbox" id="psd" value="1"></td>
    </tr>
    <tr>
    <td>tipologia</td>
    <td></td>
    <td><select name="tipo" id="tipo">
    <option value="nessuno">qualsiasi</option>
    <option value="divertimento">divertimento</option>
    <option value="industria">industria</option>
    <option value="commercio">commercio</option>
    <option value="informazione">informazione</option>
    </select></td>
    </tr>
    <tr>
    <td><input type="submit" name="Submit2" value="Invia"></td>
    <td></td>
    <td></td>
    </tr>
    </table>
    </form></td>
    </tr>
    </table>


    </p>
    </body>
    </html>

    Il mio problema è che non so come iniziare a scrivere cercain.php... come la imposto ??? portate pazienza... se un utente scrive qualcosa nel campo "cerca_note" e poi spunta "fla" come faccio a fargli fare la ricerca? so che sarà banale... ma non ci arrivo! mi aiutate per favore?

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