diff --git a/build/perl/virtualmin/dolibarr.pl b/build/perl/virtualmin/dolibarr.pl
index 98460047f0c1cf864ec0204a8ad9ceb41618f8d7..56ceda03f9d630074b77c192d5b1ca50097c3e85 100644
--- a/build/perl/virtualmin/dolibarr.pl
+++ b/build/perl/virtualmin/dolibarr.pl
@@ -184,10 +184,14 @@ local $cfile = $cfiledir."conf.php";
 local $oldcfile = &transname();
 local $olddocdir = &transname();
 local $url;
+
 $tmpl = &get_template($d->{'template'});
-$charset = $tmpl->{'mysql_charset'};
-$collate = $tmpl->{'mysql_collate'};
-$encoding = $tmpl->{'postgres_encoding'};
+$mycharset = $tmpl->{'mysql_charset'};
+$mycollate = $tmpl->{'mysql_collate'};
+$pgcharset = $tmpl->{'postgres_encoding'};
+$charset = $dbtype eq "mysql" ? $mycharset : $pgcharset;
+$collate = $dbtype eq "mysql" ? $mycollate : "C";
+
 $path = &script_path_url($d, $opts);
 if ($path =~ /^https:/) {
         $url = "https://$d->{'dom'}";