Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    56

    motore di ricerca su due tabelle

    motore di ricerca su due tabelle che però deve restituire il risultato (nome) solo di una tabella.

    Ho la tabella 1 in cui appaiono vari campi tra cui: id, nome, paginaid
    Ho la tabella 2 su cui appaiono dati come: testo e paginaid (il cui dato è sempre uguale a pagina id della tabella1

    per fare la ricerca e visualizzare i risultati (nome) nella tabella1 non ho riscontrato alcuna difficoltà mentre per farla nella tabella2 si: il problema consiste nel fatto che riesco a fargli fare la ricerca ma non so come far apparire i risultati che ovviamente vorrei fossero il nome della tabella1
    (sono stato abbastanza chiaro? mmm, non ne sono sicuro :master: )

  2. #2
    $result = mysql_query("SELECT paginaid FROM tabella2 WHERE testo LIKE '%tre%'",$db);
    while ($row = mysql_fetch_array($result)) {
    $row2 = mysql_fetch_array(mysql_query("SELECT nome FROM tabella WHERE paginaid='$row[paginaid]'",$db));
    echo $row2['nome'];

    oppure

    $result = mysql_query("SELECT tabella1.nome AS nome FROM tabella1,tabella2 WHERE tabella1.paginaid = tabella2.paginaid AND tabella2.testo LIKE '%tre%'",$db);
    while ($row = mysql_fetch_array($result)) {
    echo $row['nome'];
    visitate http://camicio.altervista.org per caxxate varie :d

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    56
    grazie x la risposta ma o ho sbagliato o c'è qualcosa che non torna:
    io ho provato entrambi i modi, così

    $result = mysql_query("SELECT yp_business.name AS name FROM yp_business,yp_infopage WHERE yp_business.infopageid = yp_infopage.infopageid AND yp_infopage.pagetext LIKE '%query%'",$db);
    while ($row = mysql_fetch_array($result)) {
    echo $row['name'];



    $result = sql_query("select busid, name from yp_business where name LIKE '%$query%' order by busid DESC", $dbi);
    $row2 = sql_query("select pagetext from yp_infopage where infopageid='$row2[busid]'", $dbi);
    echo $row2['name'];

    per essere più chiari ecco i campi delle tabelle
    yp_businness
    name
    busid
    infopageid

    yp_infopage
    infopageid
    pagetext

    GRAZIE

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    56
    solo che non riesco a far richiamare il nome, ovvero:
    se queste sono le mie tabelle
    yp_businness
    name
    busid
    infopageid

    yp_infopage
    infopageid
    pagetext

    cercando nella seconda riesco ad avere nel link di risposta il campo busid della prima ma non il campo name

    questa è la parte di codice incriminata, qualcuno può aiutarmi? pleaseeeeeeeeeeeeeeeeeee!!!
    ----------------------------------------------------------------

    $result = sql_query("select infopageid from yp_infopage where pagetext LIKE '%$query%' order by infopageid DESC", $dbi);
    $row2 = sql_query("select name, busid from yp_business where infopageid='$row2[busid]'", $dbi);
    echo $row2['name'];
    echo "<table border=\"0\" cellpadding=\"3\" cellspacing=\"1\" class=\"tabletable\" width=\"95%\" align=\"center\"> <tr> <td class=\"tableHeaderTD\">[B]"RISULTATI DELLA RICERCA"</a>
    </tr></table>";
    if (sql_num_rows($result, $dbi) == 0) {
    echo "<table border=\"0\" cellpadding=\"3\" cellspacing=\"1\" width=\"95%\" align=\"center\"> <tr> <td>"NESSUN RISULTATO TROVATO"</a></tr>
    </table>";
    } else {
    while(list($busid, $name) = sql_fetch_row($result, $dbi)) {
    echo "<table border=\"0\" cellpadding=\"3\" cellspacing=\"1\" width=\"95%\" align=\"center\"> <tr> <td><big>&middot</big><a href=\"cercaazienda&file=index&func=displayinfo&bi d=$busid\">ssss$name</a></a>
    </tr></table>";

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2000
    Messaggi
    56
    giro e rigiro ma non riesco a trovare la banalità che mi sbriga la matassa

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.