다운로드
소프트웨어 개발
계정
다운로드
소프트웨어 개발
Login
Forgot Account/Password
계정 만들기
언어
도움
언어
도움
×
Login
Login Name
Password
×
Forgot Account/Password
Translation Status of 한국말
Category:
Software
People
PersonalForge
Magazine
Wiki
검색
OSDN
>
브라 우즈 소프트웨어
>
Internet
>
WWW/HTTP
>
Dynamic Content
>
XOOPS
>
Ticket List/Search
>
Ticket #4030
XOOPS
Description
Project Summary
Developer Dashboard
웹 페이지
Developers
Image Gallery
List of RSS Feeds
Activity
Statistics
History
다운로드
List of Releases
Stats
소스 코드
Code Repository list
CVS
View Repository
티켓
Ticket List
Milestone List
Type List
Component List
List of frequently used tickets/RSS
Submit New Ticket
Documents
Communication
포럼
List of Forums
도움 (1)
Open Discussion (1)
Mailing Lists
list of ML
xoops-cvslog
News
Ticket #4030
Ticket List
Submit New Ticket
RSS
プロフィール編集の「その他」欄に長文を書くとボタンが消える
오픈 날짜:
2004-03-04 20:13
마지막 업데이트:
2004-06-21 15:29
monitor
ON
OFF
Reporter:
toshimitsu
소유자:
(None)
Type:
Bugs
Status:
Closed
Component:
(None)
MileStone:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None
Details
Reply
プロフィール編集の「その他」欄に長文を書くと
IE などのブラウザーでは、
「アカウント編集で変更ボタンが消える」の症状が
Xoops2.0.6でも起きる
Xoops公式サイトフォーラムより
http://jp.xoops.org/modules/newbb/viewtopic.php?
topic_id=2704&forum=12
[quote]
Lennonさんは書きました:
初めまして、Lennonというものです。
早速本題ですが
プロフィールの編集で「その他」のところに日本語で長文(150文
字程)書き込んだところ、「パスワード欄」から「変更を保存」が
消えてしまいました。
どうやら「その他」欄にパスワードから下のHTML構文が入り込ん
でしまって変更や修正が出来なくなってしまいました。
[/quote]
------------------------------------
テスト再現性あり、下記文字を 「その他」の欄にいれたとき
Lennonさん指摘の例
[quote]
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
[/quote]
----------------------
原因
[quote]GIJOEさんは書きました:
結局、str_strimwidth 関数の使い方の問題なんじゃないでしょ
うか。
まったくの予想ですが、この関数って、substr的な目的で使うの
ではないような気がします。
具体的には、改行が混ざると、とたんに返す文字数が期待通りに
なりません。
[quote]
----------------------
変更案
include/functions.php 570行目付近
[quote]Ryujiさんは書きました:
で、修正ですが、ほんとはこういう動作をして欲しいのだろうな
ぁということで…
[code]
function xoops_substr($str, $start, $length,
$trimmarker = '...')
{
if( strlen( $str ) <= $length ) return $str;
if (XOOPS_USE_MULTIBYTES == 1 && function_exists
('mb_internal_encoding') && @mb_internal_encoding
(_CHARSET)) {
return mb_strcut( $str , $start , $length -
strlen( $trimmarker ) ) . $trimmarker ;
}
return substr($str, $start, $length - strlen
($trimmarker)).$trimmarker;
}
[/code]
元のxoops_substr()だと、マルチバイト環境じゃないとtrimす
る必要なくても$trimmarker('...')ついちゃうんですね。本家
のアカウント編集して確認しました。
[/quote]
Ticket History (1/1 Histories)
2004-06-21 15:29
Updated by:
toshimitsu
Ticket Close date
is changed to
2004-06-21 15:29
Resolution
Update from
None
to
Fixed
Status
Update from
Open
to
Closed
Attachment File List (
0
)
Attachment File List
No attachments
Edit
Add Comment
You are not logged in.
I you are not logged in, your comment will be treated as an anonymous post. »
Login
Add Comment
Preview
Submit
IE などのブラウザーでは、
「アカウント編集で変更ボタンが消える」の症状が
Xoops2.0.6でも起きる
Xoops公式サイトフォーラムより
http://jp.xoops.org/modules/newbb/viewtopic.php?
topic_id=2704&forum=12
[quote]
Lennonさんは書きました:
初めまして、Lennonというものです。
早速本題ですが
プロフィールの編集で「その他」のところに日本語で長文(150文
字程)書き込んだところ、「パスワード欄」から「変更を保存」が
消えてしまいました。
どうやら「その他」欄にパスワードから下のHTML構文が入り込ん
でしまって変更や修正が出来なくなってしまいました。
[/quote]
------------------------------------
テスト再現性あり、下記文字を 「その他」の欄にいれたとき
Lennonさん指摘の例
[quote]
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
[/quote]
----------------------
原因
[quote]GIJOEさんは書きました:
結局、str_strimwidth 関数の使い方の問題なんじゃないでしょ
うか。
まったくの予想ですが、この関数って、substr的な目的で使うの
ではないような気がします。
具体的には、改行が混ざると、とたんに返す文字数が期待通りに
なりません。
[quote]
----------------------
変更案
include/functions.php 570行目付近
[quote]Ryujiさんは書きました:
で、修正ですが、ほんとはこういう動作をして欲しいのだろうな
ぁということで…
[code]
function xoops_substr($str, $start, $length,
$trimmarker = '...')
{
if( strlen( $str ) <= $length ) return $str;
if (XOOPS_USE_MULTIBYTES == 1 && function_exists
('mb_internal_encoding') && @mb_internal_encoding
(_CHARSET)) {
return mb_strcut( $str , $start , $length -
strlen( $trimmarker ) ) . $trimmarker ;
}
return substr($str, $start, $length - strlen
($trimmarker)).$trimmarker;
}
[/code]
元のxoops_substr()だと、マルチバイト環境じゃないとtrimす
る必要なくても$trimmarker('...')ついちゃうんですね。本家
のアカウント編集して確認しました。
[/quote]