X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V  < 1 2
Открыть тему
Добавить ответ в эту тему
> убрать GET запрос с URL, Сделать ЧПУ ссылок
Kumidzeke
Kumidzeke
сообщение 28.10.2016, 15:41; Ответить: Kumidzeke
Сообщение #12


WoWeb, советую прочесть доку по php полностью, познакомится с oop, mvc. Прочесть пару книг.


--------------------
Telegram — @za4me
Skype — Kumidzeke
Vk — vk.com/za4me
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WoWeb
WoWeb
Topic Starter сообщение 28.10.2016, 15:48; Ответить: 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
Alexandr_js
сообщение 28.10.2016, 16:10; Ответить: Alexandr_js
Сообщение #14


Цитата(WoWeb @ 28.10.2016, 15:48) *
$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


Цитата(WoWeb @ 28.10.2016, 15:48) *
header($_SERVER['SERVER_PROTOCOL']." 404 Not Found");
    header("Location: 404.html");


Location: 404.html не лучший
вариант, лучше
require_once 404.html

Не вижу в этом смысла

Цитата(WoWeb @ 28.10.2016, 15:48) *
if($link[0] == $result['seo_link'])


не лучше
Код
!empty($result)




Сообщение отредактировал Alexandr_js - 28.10.2016, 16:18


--------------------
Забанен за мошенничество
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WoWeb
WoWeb
Topic Starter сообщение 28.10.2016, 16:16; Ответить: 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
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


--------------------
Забанен за мошенничество


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Kumidzeke
Kumidzeke
сообщение 28.10.2016, 16:29; Ответить: Kumidzeke
Сообщение #17


Цитата(WoWeb @ 28.10.2016, 16:16) *
Я не понял алгоритм формирования чпу

Покажите, где вы читаете за ЧПУ.

Ну и код выложите на github, мы же не экстрасенсы тут :D

Сообщение отредактировал Kumidzeke - 28.10.2016, 16:31


--------------------
Telegram — @za4me
Skype — Kumidzeke
Vk — vk.com/za4me
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WoWeb
WoWeb
Topic Starter сообщение 28.10.2016, 16:34; Ответить: WoWeb
Сообщение #18


Kumidzeke, Пусть будет так как есть, благодарю еще раз.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Kumidzeke
Kumidzeke
сообщение 28.10.2016, 17:16; Ответить: Kumidzeke
Сообщение #19


Цитата(WoWeb @ 28.10.2016, 16:34) *
Пусть будет так как есть


Это плохой подход к разработке.

Не за что.


--------------------
Telegram — @za4me
Skype — Kumidzeke
Vk — vk.com/za4me


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WoWeb
WoWeb
Topic Starter сообщение 28.10.2016, 17:18; Ответить: WoWeb
Сообщение #20


Kumidzeke, У меня пока не достаточно опыта в php, со временем буду работать с кодом, буду улучшать.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V  < 1 2
Открыть тему
Добавить ответ в эту тему
Быстрый ответ
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Куплю "вечные URL" с ваших сайтов с тематикой - Пластиковые Окна!
5 regem 7382 15.3.2020, 19:46
автор: Narsus797
Открытая тема (нет новых ответов) Куплю сайты, внутри темы подробный запрос
3 PticaKate 1593 12.11.2019, 16:22
автор: 0pium
Открытая тема (нет новых ответов) Get-Web.site - Качественная верстка сайтов
0 GetWeb 1023 29.7.2019, 20:08
автор: GetWeb
Открытая тема (нет новых ответов) Куплю места для размещения TXT+URL Строительная тематика.
7 regem 6507 28.3.2019, 18:31
автор: regem
Открытая тема (нет новых ответов) Как убрать полоски с картинками “PushDown”
4 mstdmstd 3123 8.10.2018, 17:31
автор: -Сабж-


 



RSS Текстовая версия Сейчас: 23.9.2021, 22:45
Дизайн