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

    Ricerca in campo database mysql

    Ciao a tutti volevo chiedervi come modificare questa stringa per cercare sia nel campo "titolo" che in un altro campo denominato "descrizione", grazie:

    <input TYPE="radio" CHECKED NAME="criterio" VALUE="titolo">

    Pier

  2. #2
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    ti riferisci a una parte php? vuoi mettere nel value il dato del db? select * from tabella.... e il resto della query. Mau fatto?

  3. #3
    Non ti ho capito molto, mi spiego meglio:
    vorrei cercare in due campi del database mysql e cioè oltre che nel campo "titolo" anche nel campo "descrizione".-
    Non sono pratico di php, forse basta scrivere:
    <input TYPE="radio" CHECKED NAME="criterio" VALUE="titolo" AND VALUE="descrizione">

    Non so forse dovevo postare nel forum php ?
    Attendo, grazie

  4. #4
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    Per estrarre i dati da un db devi avere i dati di accesso al db: user pwd e nome db. Poi la sintassi potrebbe essere questa:
    Codice PHP:
    $select ="select titolo, descrizione from nome_tabella";
    $sql mysql_fetch_array($select);
    $result mysql_fetch_array($sql); 
    Questa una sintassi di base da utilizzare con un ciclo per ricrcare i campi in tutti i record. Se ne vuoi uno solo basterebbe sapere l'id di firerimento del record.
    Poi per metterlo nel value:
    Codice PHP:
    <input type="radio" name="nome" value="<?=$result['nome_campo']?>">

  5. #5
    Ti posto il tutto in maniera più completa:
    Nel file "serch.php" ho il seguente:
    <form name "cerca1" method="post" action="result.php">
    <input TYPE="hidden" NAME="submitted" VALUE="base"><input TYPE="hidden" NAME="submitted" VALUE="base">
    <table width="100%">
    <tr>
    <input TYPE="radio" CHECKED NAME="criterio" VALUE="titolo">
    TITOLO
    </tr>
    <input TYPE="TEXT" onfocus="this.value='';" SIZE="42" NAME="chiave" value="inserisci una o due parole chiave"><input TYPE="submit" ACTION="result.php" VALUE="cerca" METHOD="get" NAME="search">
    </tr>
    </table>
    </form>

    Mentre nel file "result.php" ho:

    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
    $sql="SELECT * FROM articoli WHERE ";
    $where="";
    .......
    while (list($key,$value) = each($words)) {
    $words[$key] = "{$_POST['criterio']} LIKE '%". $words[$key] ."%'";
    }
    .......

    Spero di esserti stato di aiuto

  6. #6
    Utente di HTML.it L'avatar di marco80
    Registrato dal
    May 2005
    Messaggi
    1,357
    se nn ho capito maòe tu hai questo:
    <input TYPE="radio" CHECKED NAME="criterio" VALUE="titolo"> checked per far si che la query ricerchi nel campo testo ma vuoi cercare in altri campi.
    Se corretto ti basterebbe la text area per inserire il dato da cercare

    <form name="cerca1" method="post" action="result.php">
    <input TYPE="TEXT" onfocus="this.value='';" SIZE="42" NAME="chiave" VALUE="inserisci una o due parole chiave"><input TYPE="submit" VALUE="cerca">
    </form>
    A questo punto arriva alla pagina un dato $_POST['chiave']
    e lo utilizzerai per la ricerca
    SELECT * FROM tabella WHERE nome_campo LIKE '%".$_POST['chiave']."%' || nome_campo2 LIKE '%".$_POST['chiave']."%' || ......
    Ho usato || che sta per "or" per far cercare la parola in uno dei campi della tabella

    Spero di averti capito..

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.