Why not use JFile::getExt($filename) with uploads

9 年 3 周 前 #1078 Gosling Cools
Hi,

Is there a reason why you don't use JFile::getExt($filename) and JFile::stripExt($filename) in the \tables\XXXXX.php files?
For instance a filename with multiple dots will explode wrongly with your code:
//Replace any special characters in the filename
                  $filename = explode('.', $file['name']);
                  $filename[0] = preg_replace("/[^A-Za-z0-9]/i", "-", $filename[0]);
Regards,

Gosling

Please 登录注册一个帐号 to join the conversation.

9 年 2 周 前 #1079 Victor
Hi Gosling,

Thank you for pointing out this issue. We have patched our system to use Joomla functions instead of PHP ones.

Best regards,

Víctor

Back-end developer on Component Creator

Please 登录注册一个帐号 to join the conversation.

9 年 2 周 前 #1080 Gosling Cools
Replied by Gosling Cools on topic Why not use JFile::getExt($filename) with uploads
Thanks!

But now there's an error in the code.

This line:
$filename[0] = preg_replace("/[^A-Za-z0-9]/i", "-", $filename);
Should be
$filename = preg_replace("/[^A-Za-z0-9]/i", "-", $filename);

And this line:
$filename = md5(time()) . '-' . array($filename, '.', $extension);
Shoud/could be:
$filename = md5(time()) . '_' . $filename . '.' . $extension;
Regards,

Gosling

Please 登录注册一个帐号 to join the conversation.

9 年 2 周 前 #1082 Gosling Cools
Replied by Gosling Cools on topic Why not use JFile::getExt($filename) with uploads
And now remove the last ) please in:
//Add Timestamp MD5 to avoid overwriting
$filename = md5(time()) . '-' . $filename . '.' . $extension);
:-)

Please 登录注册一个帐号 to join the conversation.

9 年 2 周 前 #1084 Gosling Cools
Replied by Gosling Cools on topic Why not use JFile::getExt($filename) with uploads
this line:
$filename = md5(time() . '-' . $filename . '.' . $extension);
should be
$filename = md5(time()) . '-' . $filename . '.' . $extension;

Please 登录注册一个帐号 to join the conversation.

9 年 2 周 前 #1086 Victor
Done! :)

Back-end developer on Component Creator

Please 登录注册一个帐号 to join the conversation.

创建页面时间:0.054秒
核心: Kunena 论坛

We use cookies so that you can place orders and we can provide a better service. You can control the use of cookies at the individual browser level. If you reject cookies, you may still use our website, but your ability to use some features or areas of our website may be limited.