2010-12-04 54 views
0

J'essaie d'utiliser le sphinx api pour récupérer des données d'un db mysql, mais je continue d'obtenir cette erreur lorsque je le charge sur mon navigateur.La requête a échoué: connexion à localhost: 3306 échoué dans sphinx

Échec de la requête: connexion à localhost: 3306 a échoué (errno = 4, msg =).

J'ai eu pas de chance quand j'ai essayé de changer le numéro de port à 3312, et quelques autres ..

que je fait en mesure d'obtenir des résultats pour les requêtes par commande linux, mais l'erreur se produit lorsque je tente il (en utilisant le fichier sphinxapi.php) sur mon navigateur

code:

include('sphinxapi.php'); 

$cl = new SphinxClient(); 
$cl->SetServer("localhost", 3306); 

$cl->SetMatchMode(SPH_MATCH_ANY ); 
$result = $cl->Query("email"); 


if ($result === false){ 
     echo "Query failed: " . $cl->GetLastError() . ".\n"; 
} 
else{ 
    print_r($result); 
} 

J'utilise sphynx 0.9.8

+1

Quelle version de Sphinx utilisez-vous? – PureForm

+0

J'utilise sphinx 0.9.7, mis à jour – steve

Répondre

3

Merci les gars, en fait je compris. J'ai utilisé mon ip de serveur au lieu de "localhost".

0

Assurez-vous que votre démon recherche sphynx est en marche et écoute sur le port 3306

+0

Il est effectivement. Mais il semble que cela ne fait aucune différence parce que si je laisse tout par défaut au port 3312, il me donne toujours l'erreur en disant, connexion à localhost: 3312 échoué – steve

+1

@barjonah - try 'ps afx | grep searchd', voir que searchd est opérationnel, et cherchez 'listen' dans la configuration du searchd – ajreal