私は、開発中の Web アプリケーションでリッチ テキスト エディター (tiny_mce) をかなり広く使用しています。理解できない問題は、生成されたコンテンツの長さがデータベース フィールドに収まるようにユーザー入力を制限する方法です。リッチテキスト以外のコンテンツに通常使用する文字カウンターは、ユーザーが舞台裏で生成されている HTML を見ない (または知らない、または気にしない) ため、ほとんど役に立ちません。つまり、入力を 100 文字に制限し、ユーザーが 99 文字を入力した場合、舞台裏でコンテンツを構造化するために使用される html タグが原因で、文字制限を超える可能性があります。
私が見るオプションは次のとおりです。
- 何もせず、最善を尽くしてください。明らかに、実際にはオプションではありません。データベース (この場合は mysql) に保存しようとすると、挿入が失敗する可能性が高くなります。
- 生成された HTML の長さを検証し、許可された長さを超えている場合はユーザーにメッセージを提供します。これは、知る限りテキスト入力の要件を満たしているユーザーを混乱させるでしょう。実際には99文字しか入力していないのに制限を超えたと彼に言うと、サーバーは混乱/激怒するだけです
- 絶対に超えないことを期待して、データベース フィールドを非常に大きくします。悪い考えのようです...
これは、よく発生する問題です。ここでの最善の解決策は何ですか?