$sql = sprintf("SELECT topic_title
FROM `phpbb_topics`
WHERE `topic_title` LIKE '%%%s%%' LIMIT 20"
, mysql_real_escape_string('match this title')
);
que je dirige cette requête dans phpMyAdmin les résultats sont les suivants: (correct)Recherche 'de TOPIC_TITLE' via MYSQL php phpbb, mais correspondance exacte ne fonctionne pas
match this title
match this title 002
Mais quand je lance ce même MYSQL requête en PHP je reçois: (incorrect)
match this title 002
J'ai aussi essayé MATCH CONTRE avec le même résultat à la fois php et phpMyAdmin:
$sql = "SELECT topic_title
FROM phpbb_topics
WHERE MATCH (topic_title)
AGAINST('match this title' IN BOOLEAN MODE)";
Le bloc entier code im en utilisant pour la recherche avec:
mysql_connect("localhost", "user", "pass") or die(mysql_error());
mysql_select_db("phpbb") or die(mysql_error());
$query = "match this title";
$query = "SELECT topic_title
FROM phpbb_topics
WHERE MATCH (topic_title)
AGAINST('$query' IN BOOLEAN MODE)";
// Doesn't work (these 2 both give the same result "match this title 002" and no the "match this title")
// $query = "SELECT * FROM `phpbb_topics`
// WHERE `topic_title`
// LIKE '%$query%'
// LIMIT 0, 30 "; // Doesn't work
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result) or die(mysql_error());
while($row = mysql_fetch_array($result)){
$topic_title = $row['topic_title'];
echo "$topic_title";
}
Toute idée de ce que je fais mal?
I'v été à la recherche dans tous les sens et ont trouvé à côté d'aucune aide :(
Ah ouais, juste obtenir un peu confus entre bash et php, comme avec bash vous avez presque toujours besoin des guillemets. Mais ça ne fait pas de mal d'avoir les citations à droite? J'ai également ajouté les balises
après avoir vu que 2 résultats sont arrivés en une longue phrase: P (Acclamations!) – Mint
Non, les citations ne feront pas de mal. C'est une question de style. Je préfère mettre toutes mes variables hors des citations. –