2016-11-20 5 views
0

このクエリはwordnet自身で提供されており、定義などの単語情報を取得するために使用されます。それは1ヶ月間うまくいっていたが、今はちょうど仕事をやめた。 の横に、このクエリはphpMyadminで正常に動作します!関連の場所ですべてのメソッド/関数呼び出しとプリントmysqli_connect_errno()mysqli_connect_error()mysqli_stmt_errno($stmt)WordNetデータベース上のmysqlクエリが正常に動作していただけです。

if ($stmt = $link->prepare("SELECT lemma,pos,sensenum,synsetid,definition ,sampleset FROM dict WHERE lemma = ? ORDER BY pos,sensenum")) 
{ 
    $stmt->bind_param("s",$Vocab); 
    $stmt->execute(); 
    $stmt->bind_result($Lemma, $Pos, $Sensenum, $synsetid, $Def1, $Def2); 
    while($stmt->fetch()) 
    { 
     $output[]=array("Pos"=>$Pos,"Sensenum"=>$Sensenum,"Def1"=>$Def1,"Def2"=>$Def2, "pDef"=>''); 
    } 
    echo "@@*@@"; 
    print json_encode($output); 
    $stmt->close(); 
} 
+0

すべてのエラー?それが 'echo'?の内容を印刷しないことはそれだけであることは可能です'$ stmt-> execute()'の戻り値を出力します '$ output'配列を' var_dump($ output) 'でダンプしてみてください – blackpen

+0

' $ stmt-> execute( ) 'TRUEを返しますか? 'var_dump($ output)'は何を出力しましたか? whileループの直後に置くことができます。 – blackpen

+0

結果は@@ * @@ NULLです phpMyAdminで同じクエリを実行すると、多くの行が表示されます! – behruz

答えて

0

チェックの戻り値は、エラーをチェックします。

データベース名が設定で変更されている可能性があります。ユーザー/パスワードが変更されている可能性がある場合は、select now() as c1のようなダミークエリを実行し、それが有効かどうか確認してください。

ダミークエリが機能する場合は、元のクエリを実行します。

limit 10句を持つ行を制限することによってそして、あなたはそれを考え出した場合、将来の読者のためにここにその情報を追加します。

関連する問題