0

MySQL クエリに問題があります。私のデータベース構造は次のようになります。

id (PRIMARY_KEY, AUTO_INCREMENT)

deviceID (TEXT)

name (TEXT)

latidude (TEXT)

longitude (TEXT)

これは、最初のエントリがどのように見えるかです (上記のような順序で):

1 fc29daf8-bc53-4235-a1df-7d54b4e67b4c username 46.993393 5.448076

私はこのクエリでデータベースを検索しています:

$result = mysql_query("SELECT name FROM position WHERE deviceID = '$deviceID'");

しかし、エントリが見つかりません。deviceID は $_GET から取得され、データベース内のこれとまったく同じです。また、エコーで印刷して正しいかどうかを確認しました。

次のように PHP ファイルに送信されます。

read_uniqueid.php?deviceID=fc29daf8-bc53-4235-a1df-7d54b4e67b4c

次のように .php ファイルから読み取ります。

$deviceID = $_GET['deviceID'];
echo $deviceID.'<br>';

これらの行の後、上記のクエリが送信されます。

データベースへの有効な接続があります。クエリに問題があるだけで、そのように名前を検索すると、他のすべてのエントリが取得されます。

このクエリは機能し、すべてのエントリが得られます。

$result = mysql_query("SELECT * FROM position WHERE name = '$name'");
4

1 に答える 1

0

Try like,

$result = mysql_query("SELECT name FROM position WHERE deviceID like '%$deviceID%'");

the column deviceID may have space in before or after the value.

于 2012-10-25T09:16:30.150 に答える