0

私はajaxを使用しており、次の方法で値を返しています

$query = mysql_query("SELECT DISTINCT * FROM symptom WHERE symptom LIKE '%$key%'")or die('couldnt select');
while(($row = mysql_fetch_array($query))!=false){

    echo $row['disease'];

}   

しかし、ajax関数で受け取った結果は次のような結果を示しています

streppneumonia

それ以外の

strep
pneumonia

私は何を間違っていますか?私はここで問題を理解することはできません.

4

5 に答える 5

3

クイックフィックス:echo $row['disease'].'<br />';

実際には、Web サービスは JSON のようなより良い形式でデータを返す必要がありますが、そこから javascript を使用してデータを分割する必要があります。

于 2012-11-28T13:48:21.263 に答える
2

試す

echo $row['disease'].'<br />';
于 2012-11-28T13:48:23.060 に答える
1
$query = mysql_query("SELECT DISTINCT * FROM symptom WHERE symptom LIKE '%$key%'")or die('couldnt select');
$str = '';
while(($row = mysql_fetch_array($query))!=false){

    $str .= $row['disease']. "<br>";

} 

echo $str;
于 2012-11-28T13:58:15.070 に答える
1

ajax を使用して複数の値を返す場合は、json形式で送信します。クライアント側でブレークタグでブレークできますが、複数の値を区別することはできません:

<?php
$query = mysql_query("SELECT DISTINCT * FROM symptom WHERE symptom LIKE '%$key%'")or die('couldnt select');
while(($row = mysql_fetch_array($query))!=false){

    $diseases[] =  $row['disease'];

} 

echo json_encode($diseases);

?>

あとでクライアント側でjsでデコード

于 2012-11-28T13:59:37.383 に答える
1

試す

while(($row = mysql_fetch_array($query))){

    echo $row['disease'].'<br>';

} 

ノート

mysql_*関数は非推奨です。使用してくださいPDOまたはMySQLi

于 2012-11-28T14:35:08.083 に答える