[RISOLTO]Motore di ricerca

  • Creatore Discussione Creatore Discussione Altutto
  • Data di inizio Data di inizio

Altutto

Utente Attivo
30 Set 2013
262
0
16
stubborn.altervista.org
Buonasera a tutti,
Stavo provando a scrivere un motore di ricerca in php, quando mi sono accorto che mostra sempre "non ho trovato nulla!".
Sapreste darmi una mano?
Il codice è il seguente.
PHP:
<?php
if($_GET['ricerca']==""){echo '<b>Attenzione! Questo motore di ricerca è ancora in fase beta e potrebbe non funzionare correttamente.</b><br>  <div class="rotondo"><form action="search.php" method="get">
Cerca: <input type="text" id="ricerca" name="ricerca" />
<input type="submit" value="Vai!" /></form></div>';}
else{$ricerca=$_GET['ricerca'];
$connessione= new mysqli('localhost','altutto','pw','my_altutto');
$cerca =  mysqli_escape_string(stripslashes($ricerca));
$query ="SELECT capitolo FROM storie WHERE capitolo LIKE %{$cerca}% or capitolo LIKE {$cerca}% or capitolo LIKE %{$cerca}";
$risposta = mysqli_query($query);
if ( mysqli_num_rows($risposta) > 0 ){
while($row= mysqli_fetch_assoc($risposta)) {
$capitolino=$row['capitolo'];
echo '<div class="rotondo"> $capitolino <br>';
}
} else {
echo "Non ho trovato nulla!";
}
} 
?>
 
Ciao, nella query mancano gli apici sul LIKE inoltre in fase di sviluppo ricordati che gli errori SQL sono molto comodi perrisolvere i problemi: stampali
non sono necessari gli or e nemmeno le graffe { }
PHP:
$query = "SELECT capitolo FROM storie WHERE capitolo LIKE '%$cerca%'";
    $risposta = mysqli_query($query);
    if(!$risposta)
        echo mysqli_error();
 

Discussioni simili