いくつかのフィールドを持つフォームがあります。住所もその一つです。アドレスには textarea タグを使用しました。問題は、ある住所に従って何かを検索すると、1行の住所でしか機能しないことです。つまり、アドレスに改行 (段落形式) を入力すると、結果が表示されません。他のすべての検索クエリは非常にうまく機能しています。これが私のコードです。
アドレスのドロップダウン リストのコード:
<input type="hidden" name="category_address" value="address"/>
<select name='criteria_address' style="width:100px;">
<option selected="selected"></option>
<?php
$order = "SELECT DISTINCT address FROM lh_clients ORDER BY clientname" or die (mysql_error());
$result = mysql_query($order);
while ($data = mysql_fetch_array($result)) {
echo ("<option>$data[address]</option>");
}
?>
</select>
検索クエリのコード:
if (isset($_POST['criteria_address']))
{
$category_address = $_POST['category_address'];
$criteria_address = $_POST['criteria_address'];
$query = "SELECT * FROM lh_clients WHERE $category_address = '$criteria_address' ORDER BY clientname";
$result = mysql_query($query) or die(mysql_error());
$num_rows = mysql_num_rows($result);
while ($data = mysql_fetch_array($result)) { ?>
<tr>
<td style="vertical-align:top;"><? echo $data['clientname']; ?></td>
<td style="vertical-align:top;"><? echo $data['clienttype']; ?></td>
<td style="vertical-align:top;"><? echo nl2br($data['address']); ?></td>
<td style="vertical-align:top;"><? echo $data['contacts']; ?></td>
<td style="vertical-align:top;"><? echo $data['sensitivity']; ?></td>
<td style="vertical-align:top;"><? echo $data['acountmanager']; ?></td>
<td style="vertical-align:top;"><? echo $data['responsibleexecutive']; ?></td>
<td></td>
</tr>
<?php
}
}
アドレスの改行では検索クエリが機能しないと思います。