Jump to content

Recommended Posts

Hi all,

A recent change in ProcessWire has partly broken part of Media Manager's upload feature (see the screenshot in this post with the PDO error, thanks to for @Mustafa-Online reporting). My strong feeling is that it has to do with the recent changes to the Database Class(es). I am looking into this and will report back as soon as I can.

Thanks.

Edited by kongondo
  • Like 1
Link to post
Share on other sites

By the way, a quick workaround, if you insist on living on the edge is to do the following:

  1. Edit a Media Manager field (e.g. media_manager_image)
  2. Change its Use Tags setting and save
  3. Revert the change to what it was before and save again

Uploads should now work.

Note though that using the 'Cleanup' feature might still throw the PDO error linked to in the post above.

  • Like 1
Link to post
Share on other sites
On 3/26/2020 at 4:29 PM, kongondo said:

Hi @Orkun,

Yes it is just a temporary folder.

It should. It works fine here. Could you please tell me about your setup? (ProcessWire and PHP versions, etc).

I am not sure whether it is a file permission issue. Are you on a Windows machine?

Alternatively, maybe you are trying to upload very large images and the system does not finish and you are trying to re-upload?

Please let me know.

Hi @kongondo

This Problem still happens regularly. It is always the "Empty File Upload Result" Error.
In the Processwire Logs it is a SQL Duplicate Entry Error (See Screenshot).The only way to make this work again temporarly was to delete the contents of /site/assets/MediaManager/jqfu/.files_no_show/

error.png.7cbc09082753a1b7deb5b9f92b979615.png


Processwire Version: 2.7.3 Dev
PHP Version: 7.0.33-0ubuntu0.16.04.15
Media Manager Version: Media Manager (Process) v0.0.9 β

  • post_max_size: Local Value(512M), Master Value(8M)
  • memory_limit: Local Value(512M), Master Value(128M)
  • file_uploads: On
  • upload_max_filesize: Local Value(512M), Master Value(2M)

It is also not a Windows Machine.

That's what the customer had said to me today.

Quote

It seems that the problem persists. Still almost everyone has the issue while uploading the files. Even me if I try to upload files I always get the error message and the only way it works for me is if I do the upload in the Incognito mode. I use Chrome but it seems like a general problem as people use different browsers and all have the same issue.

Quote

 

So people still get the "Empty File Upload" error and 90% of the time the file is really not uploaded.
I told them that they have to wait a bit before re-uploading big files and everything. But it still doesn't work. I also have issues if I'm not in the private/incognito mode.

And they have been trying to upload small files, mostly PDFs.

 

 

Can you help me on this one?

 

KR
Orkun

Link to post
Share on other sites

Hi @Orkun,

1 hour ago, Orkun said:

Can you help me on this one?

I'd love to. However...

1 hour ago, Orkun said:

Processwire Version: 2.7.3 Dev

Support for ProcessWire 2.7 ended on 10 May 2019 😄. We only support ProcessWire 3.x. But given that...

1 hour ago, Orkun said:

Media Manager Version: Media Manager (Process) v0.0.9 β

You are still on this very old version....I might be able to help. However, I suggest that you consider upgrading to 012 + ProcessWire 3.x. 

1 hour ago, Orkun said:

the only way it works for me is if I do the upload in the Incognito mode.

I don't see how this is related to uploading and the sql errors + the temporary files not getting deleted. 

1 hour ago, Orkun said:
  • post_max_size: Local Value(512M), Master Value(8M)
  • memory_limit: Local Value(512M), Master Value(128M)
  • file_uploads: On
  • upload_max_filesize: Local Value(512M), Master Value(2M)

post_max_size needs to be bigger than upload_max_filesize. See this post by Horst.

I have never been able to reproduce this nor has anyone else ever reported the issue. I think the best way forward is if you could set up a remote test environment where the problem is reproducible then I could come in and have a look. If that's not possible then consider granting me access to the production environment where the problem is occurring.

Link to post
Share on other sites
29 minutes ago, kongondo said:

Hi @Orkun,

I'd love to. However...

Support for ProcessWire 2.7 ended on 10 May 2019 😄. We only support ProcessWire 3.x. But given that...

You are still on this very old version....I might be able to help. However, I suggest that you consider upgrading to 012 + ProcessWire 3.x. 

I don't see how this is related to uploading and the sql errors + the temporary files not getting deleted. 

post_max_size needs to be bigger than upload_max_filesize. See this post by Horst.

I have never been able to reproduce this nor has anyone else ever reported the issue. I think the best way forward is if you could set up a remote test environment where the problem is reproducible then I could come in and have a look. If that's not possible then consider granting me access to the production environment where the problem is occurring.

Hi @kongondo

Thanks for your input. I have now adjusted the post_max_size to 1G and the
memory_limit to 2G since according to the php docs memory_limit needs also to be bigger than post_max_size.
Will see if this helps.

It is very strange that this SQL Error appears, I mean I have the following setting in MM for duplicate Media (see screenshot).
Normally It should just replace the existing media if there is a duplicate.

setting.thumb.png.1f63ef4f8e0c32cdcba492ba09d62d47.png

Could perhaps my change (that I had done a long time ago) for setting the page title for all languages be a problem? (line 1558)

duplicate_media.thumb.png.204d4125d9633f84d4df50f6500e0174.png

-------------------------------------------------------------------------------------------------------

You are right, that a upgrade to version 3 (PW) and to the newest MM Version would be a good idea.
But the problem is, that the system is a very big and complex (Multi-Lang, Multi-Site: approximately 15-20+ Websites, A lot of modules etc...) Processwire Installation.
And also there are a lot of users/editors that are editing daily.

Because of this the upgrade isn't easily feasible.
I had already started on a dev environment to upgrade to Version 3 and to trackdown all the problems that could appear and document them...

Are there any points I need to watch on when upgrading the Media Manager?
What problems could occur when upgrading (like for example media getting deleted or something?)

KR
Orkun

Link to post
Share on other sites
52 minutes ago, Orkun said:

Are there any points I need to watch on when upgrading the Media Manager?
What problems could occur when upgrading (like for example media getting deleted or something?)

There shouldn't be any problems and definitely nothing will get deleted.

52 minutes ago, Orkun said:

It is very strange that this SQL Error appears, I mean I have the following setting in MM for duplicate Media (see screenshot).
Normally It should just replace the existing media if there is a duplicate.

Yes. Sometimes this problem occurs if there was a delay in creating the media but hard to tell unless I can see it for myself.

52 minutes ago, Orkun said:

Could perhaps my change (that I had done a long time ago) for setting the page title for all languages be a problem? (line 1558)

Not sure. I'd have to test myself in a Multilingual setup. Have you tried removing the code to see if it helps? Maybe you can achieve what the code is doing in a Hook in ready.php?

I think this is what is happening:

  1. You upload a file
  2. Upload goes through OK and is placed in /site/assets/MediaManager/jqfu/.files_no_show/
  3. The media creation process starts but fails. MySQL throws the error about duplicate entry. This interrupts the media creation process.
  4. The media creation process does not finish hence it doesn't return a success message to the uploader
  5. The uploader throws the error "Empty File Upload Result" Error.
  6. Since the media creation process was interrupted, the script doesn't reach the code that deletes the temporary files
  7. You end up with lots of temporary files.
  8. Maybe you also end up with empty pages (i.e., without media or title)? Could you check this please?
52 minutes ago, Orkun said:

I had already started on a dev environment to upgrade to Version 3 and to trackdown all the problems that could appear and document them...

Good idea.

Edited by kongondo
clarification
Link to post
Share on other sites
16 minutes ago, hellerdruck said:

Any ideas?

Did you install Media Manager in a subfolder? If yes, sorry, it's a bug that occurs if you've installed Media Manager in a subfolder. It got fixed a while back but I haven't committed yet. For now, please do this:

Change this line in ProcessMediaManager.module around line #154:

"template=media-manager-settings, parent={$path},include=hidden"

to this:

"template=media-manager-settings,include=hidden"

If that's not it, then please supply more details about your setup. 

Thanks.

Edited by kongondo
Link to post
Share on other sites
6 minutes ago, kongondo said:

Did you install Media Manager in a subfolder? If yes, sorry, it's a bug that occurs if you've installed Media Manager in a subfolder. It got fixed a while back but I haven't committed yet. For now, please do this:

Change this line in ProcessMediaManager.module around line #154:


"template=media-manager-settings, parent={$path},include=hidden"

to this:


"template=media-manager-settings,include=hidden"

If that's not it, then please supply more details about your setup. 

Thanks.

that helped, thanks!

Link to post
Share on other sites
1 minute ago, hellerdruck said:

that helped, thanks!

Great! Was it a 'media-manager-installed-in-a-subfolder-issue'? I'd like to find out if the issue occurs in other setups as well. Thanks.

Link to post
Share on other sites
Just now, kongondo said:

Great! Was it a 'media-manager-installed-in-a-subfolder-issue'? I'd like to find out if the issue occurs in other setups as well. Thanks.

No, I uploaded the zip file by using the modules installation uploader. just upload, install, didn't work. hope that helps.

  • Like 1
Link to post
Share on other sites
23 minutes ago, hellerdruck said:

by the way, is there a way to show a more "dataTables" kinda look? I find the thumbnails quite big for the file load we'll have.

You mean a tabular view like this?

https://mediamanager.kongondo.com/documentation/the-media-manager-admin/filtering-media-and-changing-display/

If that's not it, maybe I could add a setting to show smaller thumbs or even not at all. I'll that on my todo/to_think_about.

Link to post
Share on other sites
15 minutes ago, kongondo said:

You mean a tabular view like this?

https://mediamanager.kongondo.com/documentation/the-media-manager-admin/filtering-media-and-changing-display/

If that's not it, maybe I could add a setting to show smaller thumbs or even not at all. I'll that on my todo/to_think_about.

No, I meant rather some list-like thing. I wouldn't need a thumbnail preview for an excel file. A line of info, next line of info.. what you have there only kinda suits images.. I guess I'll find it in the CSS files then.

Link to post
Share on other sites
  • 2 months later...

Hi @kongondo

We buyed the latest Version of Media Manager and I tried to upgrade our old Version (0.9) by moving the old module contents inside a ".old" folder
and upload the new module files and folder.

ftp.thumb.png.28bdf20d8dd6931aeb579d1697dab5ce.png

But now I am getting this error all the time, I can't access the backend anymore.
What I am doing wrong?

error.thumb.png.bfc50a637013014677318ebe26516c5b.png

PW Version is 3.0.165

Link to post
Share on other sites
  • 1 month later...

Hi kongondo,

that was the problem that comes up every now and then:

message: "SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'name-of-the-image-1695' for key 'name_parent_id'""

message: "SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'name-of-the-image-1695' for key 'name_parent_id'""

we already talked about the following problem via mail (Subject: Some bugs with upload images).
here are some more details you asked for:

What versions of MySQL, ProcessWire and Media Manager are you using?

Windows IIS
MySQL: 8.0.15, MyISAM, utf8_general_ci, PHP extension MySQLi
PHP version 7.2.7
Media Manager (Process) v0.1.2 β

Did anything change on the server recently?

No

What is the average size of the images you are trying to upload?

2 -3 MB

Does the error happen with non-image media as well?

Yes

Is the error happening for different images or always the same image?

different

Is this a multilingual site?

Yes

at the moment we help ourselves with renaming the picture and always something like that 01 ... 02 ... 03 in front of the picture name, but even that does not work reliably.

 

thank you and greetings from munich

 

Link to post
Share on other sites
1 hour ago, entschleunigung said:

What versions of MySQL, ProcessWire and Media Manager are you using?

Windows IIS
MySQL: 8.0.15, MyISAM, utf8_general_ci, PHP extension MySQLi
PHP version 7.2.7
Media Manager (Process) v0.1.2 β

I see two potential suspects here; Windows IIS and MySQL 8. I haven't tested MM in Windows IIS. However, I think we have reached a point where it is best that I have access to a test server. This could either be a test site where you can reproduce the problem or the production site itself. I have never been able to reproduce the issue, albeit I have not tried in a Windows IIS environment. I don't have access to such an environment either, sorry. No other users have reported similar UNRESOLVED issues, so I have nothing else to go on regarding your particular case. 

1 hour ago, entschleunigung said:

at the moment we help ourselves with renaming the picture and always something like that 01 ... 02 ... 03 in front of the picture name,

That's not great! Please consider giving me temporary access to a site where I can debug the issue.

 

Thanks.

  • Like 1
Link to post
Share on other sites

Hi kongondo,

unfortunately it is not possible for me to give you access to the site, otherwise I would have done it long ago. The client takes the topic GDPR very seriously and access for third parties is difficult. 

However, I've gotten the client to the point where we're changing the hosting, because there are other problems in this setup as well. I will definitely get back to you and report on the further progress. Thanks also for the support via mail.

Cheers

 

Link to post
Share on other sites
14 hours ago, entschleunigung said:

The client takes the topic GDPR very seriously and access for third parties is difficult. 

I understand

14 hours ago, entschleunigung said:

I will definitely get back to you and report on the further progress.

Please do. 

14 hours ago, entschleunigung said:

Thanks also for the support via mail.

You're welcome :-).

Link to post
Share on other sites
  • 4 weeks later...

Hello,

Good to be back developing in ProcessWire, but I must admit I am a little rusty.

Just installed version 012 on a fresh install of PW version 3.0.165  and getting the following errors when trying to edit the uploaded image page under Admin -> Media -> Manager.

Whats also odd is when trying to upload at Media Manager -> Upload, the file appears to upload, but does not show up in the Images/All tab nor does the preview show up. On some occasions the file name is present, but others it is not. I ran the check field data with no issues reported and also uninstalled and reinstalled. 

What am I missing.

Running php 7.4.3 and Mysql 8

915426423_ScreenShot2020-10-27at10_13_57PM.thumb.png.4e0133eab04d7cd0b3f29520b3f6682f.png

Link to post
Share on other sites

Hi kongondo,

Thanks for the quick replay. Your solution seems to work. I do have a follow up regarding tags. I am unable to successfully return images with the getTag() or findTag() methods that are available. Am I misunderstanding something? 

Media Manager Field. Returns empty string

$test = $theme_options->media_manager->getTag("MainNavLogo");

Default Image Field Returns ProcessWire\Pageimage

$test = $theme_options->images->getTag("MainNavLogo");

Thanks for your time.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By monollonom
      (once again I was surprised to see a work of mine pop up in the newsletter, this time without even listing the module on PW modules website 😅. Thx @teppo !)
      Github: https://github.com/romaincazier/FieldtypeQRCode
      Modules directory: https://processwire.com/modules/fieldtype-qrcode/
      This is a simple module I made so a client could quickly grab a QR Code of the page's url in the admin.
      There's not much to it for now, but if need be you can output anything using a hook:
      $wire->addHookAfter("FieldtypeQRCode::getQRText", function($event) { $event->return = "Your custom text"; }) You can also output the QR code on your front-end by calling the field:
      echo $page->qr_code_field; The module uses the PHP library QR Code Generator by Kazuhiko Arase. When looking for a way to generate a QR Code in PW I came across @ryan's integration in his TFA module. I'm not very familiar with fieldtype/inputfield module development so I blindly followed @bernhard (great) tutorial and his BaseFieldtypeRuntime. At some point I'll take a deeper look to make a module on my own.
      Some ideas for improvements :
      add the ability to choose what to ouput : page's url / editUrl / file(s) / image(s) / ... allow to output multiple QR codes ?
    • By Chris Bennett
      https://github.com/chrisbennett-Bene/AdminThemeTweaker
      Inspired by @bernhard's excellent work on the new customisable LESS CSS getting rolled into the core soon, I thought I would offer up the module for beta testing, if it is of interest to anyone.

      It takes a different approach to admin styling, basically using the Cascade part of CSS to over-ride default UiKit values.
      Values are stored in ModuleConfig Module creates a separate AdminThemeTweaker Folder at root, so it can link to AdminThemeTweaker.php as CSS AdminThemeTweaker.php reads the module values, constructs the CSS variables then includes the CSS framework Can be switched on and off with a click. Uninstall removes everything, thanks to bernhard's wonderful remove dir & contents function.
      It won't touch your core. It won't care if stuff is upgraded. You won't need to compile anything and you don't need to touch CSS unless you want to.

      It won't do much at all apart from read some values from your module config, work out the right CSS variables to use (auto contrast based on selected backgrounds) and throw it on your screen.
      You can configure a lot of stuff, leave it as it comes (dark and curvy), change two main colors (background and content background) or delve deep to configure custom margins, height of mastheads, and all manner of silly stuff I never use.

      Have been developing it for somewhere around 2 years now. It has been (and will continue to be) constantly tweaked over that time, as I click on something and find something else to do.
      That said, it is pretty solid and has been in constant use as my sole Admin styling option for all of those 2 years.

      If nothing else, it would be great if it can provide any assistance to @bernhard or other contributor's who may be looking to solve some of the quirkier UiKit behavior.
      Has (in my opinion) more robust and predictable handling of hidden Inputfields, data-colwidths and showIf wrappers.
      I am very keen to help out with that stuff in any way I can, though LESS (and any css frameworks/tools basically) are not my go.
      I love CSS variables and banging-rocks-together, no-dependency CSS you can write with notepad.



       

    • By opalepatrick
      I see old posts saying that repeaters are not the way to go in Custom Process Modules. If that is the case, when using forms (as I am trying to do) how would one tackle things like repeat contact fields where there can be multiple requirements for contact details with different parameters? (Like point of contact, director, etc) or even telephone numbers that have different uses?
      Just for background I am creating a process module that allows me to create types of financial applications in the admin area (no need to publish any of this, pure admin) that require a lot of personal or company information.
      Maybe I am thinking about this incorrectly?
    • By HMCB
      I ran across a reference to IftRunner module. The post was 6 years ago. I cant find it in available modules. Has it been pulled?
    • By tcnet
      PageViewStatistic for ProcessWire is a module to log page visits of the CMS. The records including some basic information like IP-address, browser, operating system, requested page and originate page. Please note that this module doesn't claim to be the best or most accurate.
      Advantages
      One of the biggest advantage is that this module doesn't require any external service like Google Analytics or similar. You don't have to modify your templates either. There is also no Javascript or image required.
      Disadvantages
      There is only one disadvantage. This module doesn't record visits if the browser loads the page from its browser cache. To prevent the browser from loading the page from its cache, add the following meta tags to the header of your page:
      <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Expires" content="0" /> How to use
      The records can be accessed via the Setup-menu of the CMS backend. The first dropdown control changes the view mode.

      Detailed records
      View mode "Detailed records" shows all visits of the selected day individually with IP-address, browser, operating system, requested page and originate page. Click the update button to see new added records.

      Cached visitor records
      View modes other than "Detailed records" are cached visitor counts which will be collected on a daily basis from the detailed records. This procedure ensures a faster display even with a large number of data records. Another advantage is that the detailed records can be deleted while the cache remains. The cache can be updated manually or automatically in a specified time period. Multiple visits from the same IP address on the same day are counted as a single visitor.

      Upgrade from older versions
      Cached visitor counts is new in version 1.0.8. If you just upgraded from an older version you might expire a delay or even an error 500 if you display cached visitor counts. The reason for this is that the cache has to be created from the records. This can take longer if your database contains many records. Sometimes it might hit the maximally execution time. Don't worry about that and keep reloading the page until the cache is completely created.
      Special Feature
      PageViewStatistic for ProcessWire can record the time a visitor viewed the page. This feature is deactivated by default. To activate open the module configuration page and activate "Record view time". If activated you will find a new column "S." in the records which means the time of view in seconds. With every page request, a Javascript code is inserted directly after the <body> tag. Every time the visitor switches to another tab or closes the tab, this script reports the number of seconds the tab was visible. The initial page request is recorded only as a hyphen (-).

      Settings
      You can access the module settings by clicking the Configuration button at the bottom of the records page. The settings page is also available in the menu: Modules->Configure->ProcessPageViewStat.
      IP2Location
      This module uses the IP2Location database from: http://www.ip2location.com. This database is required to obtain the country from the IP address. IP2Location updates this database at the begin of every month. The settings of ProcessPageViewStat offers the ability to automatically download the database monthly. Please note, that automatically download will not work if your webspace doesn't allow allow_url_fopen.
      Dragscroll
      This module uses DragScroll. A JavaScript available from: http://github.com/asvd/dragscroll. Dragscroll adds the ability in view mode "Day" to drag the records horizontally with the mouse pointer.
      parseUserAgentStringClass
      This module uses the PHP class parseUserAgentStringClass available from: http://www.toms-world.org/blog/parseuseragentstring/. This class is required to filter out the browser type and operating system from the server request.
×
×
  • Create New...