0

$my_venue にはスペースのあるデータがあります。例=「nana nono」。リンクにたどり着くと、スペースで途切れてしまいます。スペースがなくても大丈夫です。

<tr onmouseover="mouse_event(this, 'hlt');" onmouseout="mouse_event(this, '');">
    <?php
    $my_venue= $row['name'];

    echo "<td><a href= http://x.x.x.x:xx/JUNK/search_results.php?user-val=&venue-val=$my_venue&region-val=&lhversion-val=&releaseversion-val=&testtype-val=&api-val=&rate-val=&journaldate-val=&comments-val=&date-val=&record=%25>{$row['name']} </a></td>";
    echo "<td>{$row['region']} </td>";

ところで、この情報をDBに渡す必要があり、DBにはデータにスペースがあるため、スペースが必要です

4

2 に答える 2

2

値をrawurlencodeし、属性を引用する必要があります。特に後者は、常に実行する必要があります。ブラウザはエンコーディングがなくても寛容かもしれませんが、引用符で囲まれていない引数にスペースがあると、何があっても終了します。

echo '<td><a href="http://x.x.x.x:xx/JUNK/search_results.php?user-val=&venue-val='.rawurlencode($my_venue).'&region-val=&lhversion-val=&releaseversion-val=&testtype-val=&api-val=&rate-val=&journaldate-val=&comments-val=&date-val=&record=%25">'.htmlspecialchars($row['name']).'</a></td>';

ああ、mouse_event()ホバー時に CSS クラスを追加する場合: :hoverCSS 疑似クラスを使用でき、これには JavaScript は必要ありません。もちろん、IE6 をサポートする必要がある場合を除きますが、その場合、問題は別の場所にあります。:)

于 2013-04-16T16:13:23.623 に答える
0
$my_venue = str_replace(' ', '%20', $row['name'])
于 2013-04-16T16:13:28.473 に答える