Motore di ricerca nel sito

searedone

Utente Attivo
11 Giu 2010
508
0
0
Buongiorno a tutti ..

avrei bisogno di una mano ...

Premetto che è poco che scrivo qualche riga di codice di php quindi spero nella Vostra pietà ....

Sto creando un sito in php con l'ausilio di un libro , ma chiaramente lo sto modificando a mio piacere , ora la domanda è questa ...

Nella pagina index.php ( che poi posto )

c'è uno script che tramite la pagina jokelist mi crea le categorie che inserisco come se fossero' dei normalissimi link e quando ci clicco sopra mi manda alla pagina della categoria scelta ( logicamente guardando l'url mi accordo che c'è jokelist?id= ecc , io vorrei fare la stessa cosa come se fosse un motore di ricerca , ma con il menu a tendina dove all'interno si si formano le categorie , ma quando invio la ricerca mi fa' vedere tutte le categorie non andando a pescare l'id come nei link di index.php .... come posso fare "?"?"? vi posto i codici con le immagini per farvi capire quello che vorrei fare .....
PHP:
[ATTACH]900.vB[/ATTACH][ATTACH]902.vB[/ATTACH][ATTACH]901.vB[/ATTACH]

Scusate i file gli ho allegati in txt se no non me li caricava , nel caso basta rinominarli in php .... :( e ho allegato anche le foto di com'è e come vorrei che venisse ( o meglio il file motorediricerca ) mi crea già il menu a tendina ecc solo che non prende l'id giusto e quindi non mi prende la categoria come fa' quello della home ...

aiutoooooooo
 

Allegati

  • jokelist.txt
    jokelist.txt
    2,7 KB · Visite: 159
  • index.txt
    index.txt
    1,3 KB · Visite: 153
  • motorediricerca.txt
    motorediricerca.txt
    641 bytes · Visite: 147
  • ishot-152.png
    ishot-152.png
    32,6 KB · Visite: 298
  • ishot-153.png
    ishot-153.png
    13,3 KB · Visite: 287
Allora ...

In una immagine vedi una serie di link sotto la scritta please a select category ,,,

Se si clicca su quei link ti manda a tutti i messsaggi postati in quella categoria ....

Leggendo l'url mi da che prende l'id che crea la pagina jokelist ...

Io vorrei fare la stessa cosa , solo che al posto di avere tutti i link cosi , vorrei un menu a tendina ( come nella foro due che prende le categorie ) e cliccando su submit mi mandi alla categoria scelta e mi trovi i relativi post ( in questo caso barzellette )

Solo che ho creato tutto mi prende tutte le categorie nel menu a tendina ma se seleziono la categoria mi manda alla pagina di ricerca ma mi da tutte le barzellette e non mi manda alla categoria scelta ,,,,

Ora provo ad allegare tutti i file ....Vedi l'allegato motorediricerca.txtVedi l'allegato jokelist.txtVedi l'allegato index.txtVedi l'allegato motorediricerca.txtVedi l'allegato jokelist.txtVedi l'allegato index.txt
 
c'è una cosa che non mi torna nel file del motore di ricerca, vedo:
PHP:
echo "<option <a href='jokelist.php?cat='id'>$name</a></option>";
ma credo dovrebbe essere qualcosa tipo:
PHP:
echo "<option <a href=\"jokelist.php?cat=\"".$id."\">".$name."</a></option>";
 
:) niente nn funziona ...
Cavolo nn capisco il perche' , il codice originale da dal link che crea l'id giusto e mi fa' vedere solo quello inserito nella categoria ...

Possibile che solo aggiungendo un menu a tendina nn prenda più, l'id !? ...

Mi da anche con il tuo suggerimento tutto il listato delle categorie :( ...

Cavolo come si deve fare !? Help

@s se vi puo' aiutare la stringa di codice originale e' senza i tag <option> ma se li tolgo il menu a tendina rimane vuoto
 
cosa vedi se stampi:

PHP:
$catresult = mysql_query("SELECT name from category WHERE id='$cat'");

nella pagina che riceve i dati e fa la query, prova
 
ciao ...

tu intendi di mettere qui la stringa di interrogazione al database
PHP:
<?php
require ("db_connect.php");
?>











<form action="jokelist.php" method="post">
<p>View jokes satisfying the following criteria:</p>
<label>By author:
<select name="id" size="1" selected value="">


<?php

$cats = @mysql_query('SELECT id, name FROM category');
if (!$cats) {
  exit('<p>Error retrieving categories from database!<br />' .
      'Error: ' . mysql_error() . '</p>');
}

while ($cat = mysql_fetch_array($cats)) {
  $id = $cat['id'];
  $name = htmlspecialchars($cat['name']);

  echo "<li><option  <a href='jokelist.php?cat=$id'>$name</a></option></li>";

}


?>

</select></label><br />


 <input type="submit" value="Search" />

 </form>

Se cambio

PHP:
$cats = @mysql_query('SELECT id, name FROM category');

e metto quella che mi hai postato tu mi da : Error retrieving categories from database!

Che alla fine è l'errore dell'if !??!?!?
 

Discussioni simili