Voici le code que j'utilise pour chercher dans ma table. J'ai fait les colonnes pertinentes FULLTEXT dans le tableau. Cela ne me rapporte rien. Quelqu'un peut-il me dire ce que je fais mal? Merci d'avance.Recherche avec MATCH(), AGAINST() et AS score avec mysqli et php
$sql = 'SELECT id, person_name, classroom, school, MATCH (person_name, classroom, school) AGAINST (?) AS score FROM images WHERE MATCH(person_name, classroom, school) AGAINST(?) ORDER BY score DESC';
$stmt = $db_connection->prepare($sql);
$stmt->bind_param('ss',$keyword,$keyword);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($id,$uname,$class,$school);
$xml = "<data>".PHP_EOL;
while($stmt->fetch()){
$xml .= " <person>".PHP_EOL;
$xml .= " <id>$id</id>".PHP_EOL;
$xml .= " <name>$uname</name>".PHP_EOL;
$xml .= " <class>$class</class>".PHP_EOL;
$xml .= " <school>$school</school>".PHP_EOL;
$xml .= " </person>".PHP_EOL;
}
$xml .= "</data>";
echo $xml;
est Ci-dessous une image des index de la table: alt text http://clients.bionic-comms.co.uk/drew/Picture1.png
Il semblerait que le problème est d'essayer de lier les paramètres avant d'exécuter la requête. Quelqu'un peut-il confirmer que vous pouvez utiliser cette requête avec des instructions préparées?
Stupide questions d'abord: La table utilise-t-elle réellement le moteur MyISAM? Parce que le fulltext n'est supporté que là ... –
en effet. Si je peux trouver comment télécharger une image, je peux vous montrer à quoi ressemblent les index. – Drew