Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
если я правильно понял, что нужно, то где-то так:
preg_replace ('!;|\'|"|/|-|`|~|@|#|%|&|_!', '\\\0', $str);
а preg_quote() здесь свешенно ни причем...