diff --git a/install-dev/upgrade/php/update_order_messages.php b/install-dev/upgrade/php/update_order_messages.php index 357f2449f..cca1b1b7a 100644 --- a/install-dev/upgrade/php/update_order_messages.php +++ b/install-dev/upgrade/php/update_order_messages.php @@ -26,49 +26,31 @@ function update_order_messages() { - $step = 3000; - $count_messages = Db::getInstance()->getValue('SELECT count(id_message) FROM '._DB_PREFIX_.'message'); - $nb_loop = $start = 0; - if($count_messages > 0) - $nb_loop = ceil($count_messages / $step); - for($i = 0; $i < $nb_loop; $i++) - { - $sql = 'SELECT id_message, message FROM '._DB_PREFIX_.'message LIMIT '.(int)$start.', '.(int)$step; - if ($messages = Db::getInstance()->executeS($sql)) + $sql = 'SELECT id_message, message FROM `'._DB_PREFIX_.'message` WHERE message REGEXP \'query($sql)) + while ($message = Db::getInstance()->nextRow($messages)) { - if(is_array($messages)) - foreach($messages as $message) - { - $sql = 'UPDATE '._DB_PREFIX_.'message SET message = \''.pSQL(Tools::htmlentitiesDecodeUTF8(br2nl($message['message']))).'\' - WHERE id_message = '.(int)$message['id_message']; - $result = Db::getInstance()->execute($sql); - } - $start += ($step + 1); + if(is_array($message)) + { + $sql = 'UPDATE `'._DB_PREFIX_.'message` SET message = \''.pSQL(Tools::htmlentitiesDecodeUTF8(br2nl($message['message']))).'\' + WHERE id_message = '.(int)$message['id_message']; + $result = Db::getInstance()->execute($sql); + } } - } - - $count_messages = Db::getInstance()->getValue('SELECT count(id_customer_message) FROM '._DB_PREFIX_.'customer_message'); - $nb_loop = $start = 0; - if($count_messages > 0) - $nb_loop = ceil($count_messages / $step); - for($i = 0; $i < $nb_loop; $i++) - { - $sql = 'SELECT id_customer_message, message FROM '._DB_PREFIX_.'customer_message LIMIT '.(int)$start.', '.(int)$step; - if ($messages = Db::getInstance()->executeS($sql)) + $sql = 'SELECT id_customer_message, message FROM `'._DB_PREFIX_.'customer_message` WHERE message REGEXP \'query($sql)) + while ($message = Db::getInstance()->nextRow($messages)) { - if(is_array($messages)) - foreach($messages as $message) - { - $sql = 'UPDATE '._DB_PREFIX_.'customer_message SET message = \''.pSQL(Tools::htmlentitiesDecodeUTF8(str_replace('&', '&', $message['message']))).'\' - WHERE id_customer_message = '.(int)$message['id_customer_message']; - Db::getInstance()->execute($sql); - } - $start += ($step + 1); + if(is_array($message)) + { + $sql = 'UPDATE `'._DB_PREFIX_.'customer_message` SET message = \''.pSQL(Tools::htmlentitiesDecodeUTF8(str_replace('&', '&', $message['message']))).'\' + WHERE id_customer_message = '.(int)$message['id_customer_message']; + Db::getInstance()->execute($sql); + } } - } } function br2nl($str) { - return preg_replace("//i", "\n", $str); + return str_replace(array('
', '
', '
'), "\n", $str); } \ No newline at end of file