私はユーザーがフォームで変更を送信できる編集可能なファイルシステムを持っています。html有効な "id"タグまたは "name"タグとして使用されるパスをエンコードする最も良い方法
NAMEまたはIDタグとしてファイルのパスを使用したいと思います。
私はこれに最初に直面しているとは思わないので、より良いアプローチがあるかもしれません。
例:
path: ../../disney/mouse/mickey.php
既知の制限:
Jquery: no periods (.) and colons (:)
HTML : Only letter, digits,hyphens ("-"), underscores ("_"), colons (":"), and periods (".")
HTML5: All but no spaces () and at least 1 char.
PHPとJavaScriptを容易に両方の方法で文字列をデコード/エンコードすることができることが必要です。 atm私は "/" & "を置き換えて行います。"珍しいパターンで。
あなたがアドバイスしているコードはどれですか?また、パスをSHRINKSするがユニークなものがありますか?
よろしく:>
EDIT:ユーザーが変更したファイルからコードを編集することができます。パスとコンテンツをリンクするフィールドごとに入力を追加することをお勧めします。名前やidタグが適切にエンコードされていれば問題はないので、私はその点を見ません。
私はパスを使用するのではなく、数字の識別子を使用します。ユーザーはフィールド名を見たことがない - なぜそこに意味のあるものを書くのはどうですか? –
ファイル名はアップロードしてから既にユーザに知られています。 html_directoryの外にあるファイルは、ランダムに入っているフォルダでも不要です。 – Email
それで、不必要に複雑になるため、ファイル名検証機能を作成する必要があります。 '* shrug *'誰かがどこからでも問題を作り出すのを好む... –