|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Jun 2008
Messaggi: 24
|
[PHP] DATABASE - IL FORM DI RICERCA NON FUNZIONA
Ho iniziato da poco a lavorare con i database relazionali usando PHP 5.2.1 , MYSQL 5.0 , Apache 2.2 .
Su Google ho trovato alcuni esempi interessanti e devo dire che l'inserimento dei dati nel database tramite pagine .php e il loro recupero va a buon fine SE PERO' CERCO DI USARE UN FORM DI RICERCA RICEVO COME RISULTATO SOLO UNA PAGINA VUOTA ! . Ho allegato il zip contenente i file d'esempio . Personalmente sto indagando sul file result.php che dopo l'inserimento dei dati nel form collegandosi a view.php dovrebbe far apparire a video i risultati , ma come ho già detto questo non avviene . Inserendo all'inizio di result.php : mysql_error(); error_reporting(E_ALL); viene notificato il seguente errore : Undefined variable : chiave ... ecc ... Ma può essere normale ricevere questo genere di avviso se le variabili non vengono inizializzate prima dell'uso . Adesso però mi chiedo non sarà che devo abilitare o decommentare qualcosa per esempio nei file php.ini o httpd.conf per poter utilizzare la funzione di ricerca con un form ? Ringrazio anticipatamente per un eventuale risposta RESULT.PHP <? error_reporting(E_ALL); include("top_foot.inc.php"); include("config.inc.php"); top(); $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"); $keys = explode (",", $chiave); $query = ""; reset ($keys); while (list(,$parola) = each ($keys)) { $parola = trim($parola); if ($parola != "") $query .= "titolo LIKE '%$parola%' OR testo LIKE '%$parola%' OR autore LIKE '%$parola%' OR"; } $query .= "0"; $query = "SELECT id, titolo, data FROM news WHERE " . $query; $result = mysql_query($query, $db); while ($row = mysql_fetch_array($result)) { echo "<a href=\"view.php?id=$row[id]\">" . date("j/n/y", $row[data]) . " - $row[titolo]</a><br>"; } mysql_close($db); foot(); ?> VIEW.PHP <? include("top_foot.inc.php"); include("config.inc.php"); top(); $db = mysql_connect($db_host, $db_user, $db_password); $id=$_GET['id']; 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"); $query = "SELECT titolo, testo, data, autore, mail FROM news WHERE id='$id'"; $result = mysql_query($query, $db); $row = mysql_fetch_array($result); $data = date("j/n/y", $row[data]); echo "<b>$row[titolo]</b><br><br>"; echo "$row[testo]<br><br>"; if ($row[mail] != "") echo "$data, <a href=mailto:$row[mail]>$row[autore]</a><br>"; else echo "$data, $row[autore]<br>"; echo "<br><a href=index.php>Torna alla pagina iniziale</a><br>"; echo "<a href=all.php>Visualizza tutti gli articoli</a><br>"; mysql_close($db); foot(); ?> ![]() |
![]() |
![]() |
![]() |
#2 |
Junior Member
Iscritto dal: Jun 2008
Messaggi: 24
|
Il problema è stato risolto !!
Grazie lo stesso ![]() ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:15.