View Issue Details

IDProjectCategoryView StatusLast Update
0016850phpList 3 applicationCampaign Send Processpublic08-04-14 03:54
Reporterniklas.rother Assigned To 
Status resolvedResolutionfixed 
Product Version3.0.2 
Target Version3.0.XFixed in Version3.0.6 
Summary0016850: Query updating msg/hr in messagedata will fail on geman locale
DescriptionWhen processing the queue from the command line I get a lot of messages like this:

Nachrichtenbrief - Sql error replace into messagedata set id= 1, name="msg/hr", data= 13819,3548387
Nachrichtenbrief - Database error 1064 while doing query You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '0645161' at line 1

The messages are send out fine.

The problem is the "," in the query, MySQL needs a "." there. This is on a (old) GERMAN server, I'm pretty sure that's the problem. In german you write fractional numbers with a ",", but MySQL expects the english format with the ".".

Pretty common problem :)
TagsNo tags attached.


related to 0016956 resolvedmichiel MySQL Error while processing queue 



27-08-13 16:50

administrator   ~0052220

I've seen it in different (english) contexts as well. It should get " around the value.


08-01-14 15:34

reporter   ~0052522

Still having the problem on 3.0.5, seems not to be fixes.
To fix change the line setMessageData($messageid,'msg/hr',$msgperhour); in processqueue.php to setMessageData($messageid,'msg/hr',"$msgperhour");


08-04-14 03:09

reporter   ~0053464

Last edited: 08-04-14 03:10

View 2 revisions

for 3.0.5:

edit file admin/action/processqueue.php worked for me
line no. 1146:
change setMessageData($messageid,'msg/hr',$msgperhour);
to setMessageData($messageid,'msg/hr',"$msgperhour");

this will change the localised number format into the system format, that fits SQL syntax.


08-04-14 03:54

administrator   ~0053466