Помощник
|
убрать GET запрос с URL, Сделать ЧПУ ссылок |
Kumidzeke |
28.10.2016, 15:41;
Ответить: Kumidzeke
Сообщение
#12
|
|
WoWeb, советую прочесть доку по php полностью, познакомится с oop, mvc. Прочесть пару книг.
-------------------- Skype — Kumidzeke Vk — vk.com/za4me |
|
|
WoWeb
|
Сообщение
#13
|
|
WoWeb, Решил свою проблему таким образом:
Фал index.php Код <? $dmp= explode("/", $_SERVER['REQUEST_URI']); // разбиваем с разделителем "/" $link = explode(".", $dmp[2]); // Разбиваю с разделителем "." что бы отделить "html", В переменную попадает только часть котрая отвечает за название страницы. ?> <?php if(!$link[0]){ //если пустая переменная $link[0] - выводим вест список статей include "articles.php"; } elseif ($link[0]){ //если в переменной $link[0] что-то есть - выводим шаблон полной статьи include "article.php"; }?> Файл article.php: Код <?php
include "adm/connect.php"; $sql = mysql_query("SELECT * FROM blog WHERE seo_link = '".$link[0]."'") or die(mysql_error()); // Выполняю азвпрос к базе где WHERE = переменной (в столбце "seo_link" хранится seo url ля каждой статьи) $newsData = array(); $result = mysql_fetch_array($sql, MYSQL_ASSOC); ?> <? if($link[0] == $result['seo_link']){ //Если данные в переменной $link[0] совпадают с данными из запроса - значит статья существует - выводим ее?> <article> <p><?=$result['title'];?></p> <p><?=$result['keywords'];?></p> <p><?=$result['description'];?></p> <p><?=$result['seo_link'];?></p> <p><a href="<?=$result['seo_link'];?>.html"><?=$result['title_h1'];?></a></p> <p><?=$result['text'];?></p> <p><?=$result['date'];?></p> <p><?=$result['autor'];?></p> <p><?=$result['raiting'];?></p> </article> <?php } else { // Если в запросе не содержится данных - выводим 404 ошибку header($_SERVER['SERVER_PROTOCOL']." 404 Not Found"); header("Location: 404.html"); } ?> -------------------- |
|
|
Alexandr_js |
28.10.2016, 16:10;
Ответить: Alexandr_js
Сообщение
#14
|
|
$dmp= explode("/", $_SERVER['REQUEST_URI']); // разбиваем с разделителем "/" $link = explode(".", $dmp[2]); // Разбиваю с разделителем "." что бы отделить "html", В переменную попадает только часть котрая отвечает за название страницы. я так и не понял почему $_GET запрос + .htacces rewriteRule не сделали? Не используйте explode чтобы отделить не нужную часть. $link = 'page.html'; $link = strstr($link, '.',true); http://php.net/manual/en/function.strstr.php header($_SERVER['SERVER_PROTOCOL']." 404 Not Found"); header("Location: 404.html"); Location: 404.html не лучший вариант, лучше require_once 404.html Не вижу в этом смысла if($link[0] == $result['seo_link']) не лучше Код !empty($result) Сообщение отредактировал Alexandr_js - 28.10.2016, 16:18 -------------------- |
|
|
WoWeb
|
Сообщение
#15
|
|
Alexandr_js,
Не смогу понять как с сделать что бы ссылка с GET запросом отображалась не так- /blog/article.php?id=link.html А вот так - /blog/link.html Если я пропишу в HTML ссылку в таком виде - /blog/article.php?id=link.html я смогу вывести полную статью но в html ссылка будет именно в таком виде а не ЧПУ А если в HTML пропишу /blog/link.html - выдаст not found, потому что физически этого файла нету. Я не понял алгоритм формирования чпу -------------------- |
|
|
Alexandr_js |
28.10.2016, 16:25;
Ответить: Alexandr_js
Сообщение
#16
|
|
WoWeb,
Код RewriteEngine On RewriteRule ^article.php?id=(.*)$ /blog/$1.html Либо сработает на blog/blog/link.html - попробуйте перенести файл на каталог выше Либо уберите Код RewriteEngine On
RewriteRule ^article.php?id=(.*)$ /$1.html -------------------- |
|
|
Kumidzeke |
28.10.2016, 16:29;
Ответить: Kumidzeke
Сообщение
#17
|
|
Я не понял алгоритм формирования чпу Покажите, где вы читаете за ЧПУ. Ну и код выложите на github, мы же не экстрасенсы тут Сообщение отредактировал Kumidzeke - 28.10.2016, 16:31 -------------------- Skype — Kumidzeke Vk — vk.com/za4me |
|
|
WoWeb
|
Сообщение
#18
|
|
Kumidzeke, Пусть будет так как есть, благодарю еще раз.
-------------------- |
|
|
Kumidzeke |
28.10.2016, 17:16;
Ответить: Kumidzeke
Сообщение
#19
|
|
-------------------- Skype — Kumidzeke Vk — vk.com/za4me |
|
|
WoWeb
|
Сообщение
#20
|
|
Kumidzeke, У меня пока не достаточно опыта в php, со временем буду работать с кодом, буду улучшать.
-------------------- |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Запрос на бесплатные полезности | 7 | Tia2 | 1954 | 23.3.2024, 11:27 автор: Alexand3r |
|
Куплю "вечные URL" с ваших сайтов с тематикой - Пластиковые Окна! | 5 | regem | 8380 | 15.3.2020, 19:46 автор: Narsus797 |
|
Куплю сайты, внутри темы подробный запрос | 3 | PticaKate | 3648 | 12.11.2019, 16:22 автор: 0pium |
|
Get-Web.site - Качественная верстка сайтов | 0 | GetWeb | 1512 | 29.7.2019, 20:08 автор: GetWeb |
|
Куплю места для размещения TXT+URL Строительная тематика. | 7 | regem | 7641 | 28.3.2019, 18:31 автор: regem |
Текстовая версия | Сейчас: 18.4.2024, 5:38 |