1

PHPを介して入力フィールドのデータベースからデータを取得しようとしています。データが存在する場合は、プレースホルダーの代わりに、この取得した値を入力フィールドに表示したいと思います。データベースからデータを取得することはできますが、実際の入力の前にいくつかのタブが追加されています。

<input type="text" name="title" id="title"  value="
<?php  
    $title='title';
    $clean = trim(retrieve_project_info($email,$title));
    echo $clean;
?>">

したがって、dbの入力が「coldplay」の場合。取得されたデータは「[tab][tab][tab] coldplay」のようになり、URLには多くの%09が含まれています。

トリムメソッドを使用して空白を削除しました。ただし、トリムはタブを削除しません。これらのタブを削除する方法はありますか?

4

2 に答える 2

1

はい、タブを削除するのは簡単ですが、タブを削除するのではなく、タブが存在する理由を理解する方がよいでしょう。しかし、あなたのコード:

<input type="text" name="title" id="title"  value="
<?php  
    $title='title';
    $clean = trim(retrieve_project_info($email,$title));
    echo $clean;
?>">

このように書く方が良いでしょう:

<?php  
    $title='title';
    $clean = trim(retrieve_project_info($email,$title));    
?>
<input type="text" name="title" id="title"  value="<?php echo $clean; ?>">

それはあなたのタブを削除するのに役立ちますか?これを提案する理由は、retrieve_project_infoがタブを出力できるためです。

もう1つの観察:$ cleanに「が含まれている場合、コードは失敗しますか?

編集:@palmi

これが私のやり方です:

function doFormSafeHTMLEncode($someStr){
    return htmlspecialchars($someStr,ENT_QUOTES,'UTF-8'); 
}

そして、生のコードをフォームフィールドに出力するすべての場所でその関数を呼び出します。

于 2012-10-02T13:14:16.210 に答える
0

コードのタブを取り出して、画面のクロムに配置します。私はそうしました、そしてそれは私のために働きます。読みやすいコードがあるのは素晴らしいことですが、別の解決策が見つかるまで、この方法は今のところ機能します。

于 2015-05-14T22:34:34.003 に答える