делаю таким образом - тайтл поста помещаю в название вкладки браузера PHP: <script type="text/javascript"> let title = document.title; document.title = "<?php echo htmlspecialchars(mb_strimwidth($text['title'], 0,60, '...'));?>"; </script> посты выводятся нормально в теге pre, а здесь пробовал pre вставлял в код php, но выводит из базы коды ковычек вместо самих ковычек. как правильно сделать подскажите?
а кстати да..) но все равно так же выводится и тег pre выводится как текст...поменял. возможно тут с js как то надо по другому писать. PHP: "<?php echo '<pre>' . mb_strimwidth($text['title'], 0,60, '...') . '</pre>'; ?>" --- Добавлено --- надо у спецов js спросить наверно
Добрый день! Попробуйте сделать так: PHP: <? $text['title'] = 'A B C "привет из Münchenа" °&%$§ # abc 123 '; $text['title'] .= 'quod ubi caesar resciit quorum per fines ierant his uti conquirerent'; $titleText = mb_substr(mb_convert_encoding($text['title'], 'utf-8'), 0, 60).'...'; ?> <html> <head> <title></title> </head> <script type="text/javascript"> let title = document.querySelectorAll('title')[0]; title.innerHTML = '<?=$titleText;?>'; </script> </html> Удачи!
не помогло, но спасибо. пробовал экранирование ковычек PHP: htmlspecialchars($title, ENT_QUOTES, 'UTF-8') тоже не помогает
Покажите, пожалуйста, что у Вас в $title Для этого создайте директорию debug и добавьте в PHP: PHP: //------------------------------------------------------------------------------ function debug_save($str,$str2=null,$dir=null){ $datei = date("Ymd_His"); if($str2 != "") $datei .= "__"; $datei .= $str2; if($dir == "") $dir = "debug"; $file_name = $dir."/".$datei.".txt"; $str = $_SERVER['SCRIPT_FILENAME']."\r\n".$str; $fp = fopen($file_name,'w'); flock($fp, 2); fputs($fp, $str); flock($fp, 3); fclose($fp); } //------------------------------------------------------------------------------ debug_save($title);
код выдает ошибки, а в низу через echo на страницу нормально выводится название поста. почему то именно в заголовок вкладки не хочет
Ошибки из-за того, что Вы не создали директорию debug (там же где single.php) Покажите, пожалуйста, что у Вас в $title Это важно
а блин, я в корне создавал папку...выдает в текстовом файле тоже с кодами 'пример кода кнопки &quot;Показать еще&quot;, который использует PHP, PDO, AJAX и jQuery:'
Добрый день! Записал файл exampleTitle.txt Код (Text): пример кода кнопки &quot;Показать еще&quot;, который использует PHP, PDO, AJAX и jQuery См. html_entity_decode - Преобразует HTML-сущности в соответствующие им символы https://www.php.net/manual/en/function.html-entity-decode.php PHP: <? $text['title'] = file_get_contents("exampleTitle.txt"); $titleText = mb_substr(html_entity_decode($text['title']), 0, 60).'...'; ?> <html> <head> <title></title> </head> <script type="text/javascript"> let title = document.querySelectorAll('title')[0]; title.innerHTML = '<?=$titleText;?>'; </script> </html> Удачи!