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

9 years 1 week ago #1078 by 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 Log in or Create an account to join the conversation.

9 years 5 days ago #1079 by 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 Log in or Create an account to join the conversation.

9 years 5 days ago #1080 by 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 Log in or Create an account to join the conversation.

9 years 5 days ago #1082 by 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 Log in or Create an account to join the conversation.

9 years 4 days ago #1084 by 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 Log in or Create an account to join the conversation.

9 years 4 days ago #1086 by Victor
Done! :)

Back-end developer on Component Creator

Please Log in or Create an account to join the conversation.

Time to create page: 0.054 seconds
Powered by Kunena Forum

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.