PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (8): « 1 2 3 4 5 [6] 7 8 »

> Найдено сообщений: 106
winddancer Отправлено: 26 Апреля, 2015 - 18:35:10 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
если поставить
или какая там страница
(Добавление)
и создать правильную структуру вообще


Если я Вас замотал, тогда конкретный вопрос, если можете.
PHP:
скопировать код в буфер обмена
  1. $b = mysql_query("SELECT id, name, url FROM sms_menu_site");
  2. while($row = mysql_fetch_array($b))
  3. {
  4.         $value = $row['name'];
  5.         $key = $row['url'];
  6.         $id = $row['id'];
  7.         if($_GET['page']==$value) // пункт меню равен текущей странице, значит его не нужно делать ссылкой
  8.         {
  9.        echo $result[$_GET['page']];
  10.         }
  11.         else
  12.         {
  13.       echo '<a href="'.$key.'">'.$value.'</a>' . ' | ';
  14.         }
  15. }


Как под это влепить вывод страниц из MySQL ?
winddancer Отправлено: 26 Апреля, 2015 - 18:08:33 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
смотри как можно примитивно сделать

стартовый файл
PHP:
скопировать код в буфер обмена
  1. require 'configurations.php';
  2. include 'templates/header.php';
  3. include "news_block.php";
  4. include"info.php";
  5. include 'templates/content.php';
  6.  
  7.  
  8. include 'templates/footer.php';

(Добавление)
нам важно content.php
(Добавление)
content.php
PHP:
скопировать код в буфер обмена
  1. <div id="content">
  2. <?include 'admin/includes/controllers/controller.php';?>
  3. </div>

(Добавление)
controllers.php
PHP:
скопировать код в буфер обмена
  1. $controllers_page = array
  2.     (
  3.         'page'=>'pages.php',
  4.         'news'=>'news.php',
  5.         'readnews'=>'full.php'
  6.         );
  7.        
  8.        
  9.         if(!isset($_GET['do'])) {
  10.        include('main_page.php');
  11.          }

(Добавление)
а ссылки передаешь например так
CODE (html):
скопировать код в буфер обмена
  1. <a href="?do=news">Все статьи</a>

(Добавление)
но если у нас не нажата ссылка никакая то по умолчанию
PHP:
скопировать код в буфер обмена
  1. if(!isset($_GET['do'])) {
  2.        include('main_page.php');
  3.          }

главная страница
(Добавление)
и проверка на нажатие и включение файла по ссылке
PHP:
скопировать код в буфер обмена
  1. foreach($controllers_page as $cname=>$cfile):
  2.           if($_GET['do']==$cname)
  3.           include($cfile);
  4.             endforeach;


Действительно по примитивному, как Вы выразились Улыбка

В php only сделать мне не проблема.


Это меню.
PHP:
скопировать код в буфер обмена
  1.  
  2. $pages=array(
  3.   'about'=>'Первая страница',
  4.   'contacts'=>'Вторая страница'
  5. );
  6. foreach($pages as $key=>$value)
  7. {
  8.  
  9.     if($_GET['page']==$value)
  10.   {
  11.        echo $pages[$_GET['page']];
  12.   }
  13.   else
  14.   {
  15.       echo '<a href="'.$key.'">'.$value.'</a>';
  16.   }
  17.          echo "<br />";
  18. }
  19.  


Это контент.
PHP:
скопировать код в буфер обмена
  1. if(array_key_exists ($_GET['page'],$pages))
  2.       readfile('txt/'.$_GET['page'].'.htm');
  3. else
  4.      readfile('txt/about.htm');


И по делам. Но мне надо не просто php, а php+MySQL.
Соответственно я сделал меню.
PHP:
скопировать код в буфер обмена
  1. $b = mysql_query("SELECT id, name, url FROM sms_menu_site");
  2. while($row = mysql_fetch_array($b))
  3. {
  4.         $value = $row['name'];
  5.         $key = $row['url'];
  6.         $id = $row['id'];
  7.         if($_GET['page']==$value)
  8.         {
  9.        echo $result[$_GET['page']];
  10.         }
  11.         else
  12.         {
  13.       echo '<a href="'.$key.'">'.$value.'</a>' . ' | ';
  14.         }
  15. }


И создал content....
PHP:
скопировать код в буфер обмена
  1. $content = mysql_query("SELECT id, title, text, date FROM sms_mainpage");
  2. $b = mysql_query("SELECT id, name, url FROM sms_menu_site");
  3. if ($_GET['url'].$b = 'main')
  4. {
  5.         while($content1 = mysql_fetch_array($content))
  6.         {
  7.                 $id = $content1['id'];
  8.                 $title = $content1['title'];
  9.                 $text = $content1['text'];
  10.                 $date = $content1['date'];
  11.                 echo $title . "<br>" . $text . "<br><hr><br>";
  12.         }
  13. }
  14. else {readfile ('content/1st.php');}


А это мой .htaccess
CODE (htmlphp):
скопировать код в буфер обмена
  1. AddDefaultCharset utf-8
  2.  
  3. RewriteEngine on
  4.  
  5. RewriteCond %{REQUEST_FILENAME} !-f
  6. RewriteCond %{REQUEST_FILENAME} !-d
  7.  
  8. RewriteRule ^([a-z0-9]+) index.php?page=$1

(Он у меня красавчик делает так, чтобы небыло "несуществующих страниц")
(Добавление)
И к посту выше. Когда я убрал .htaccess при нажатии на любую ссылку - пишет, что страница не найдена.
winddancer Отправлено: 26 Апреля, 2015 - 17:52:48 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
та ты не так по ходу все делаешь

Если бы всё делал так, сюда бы не обращался Закатив глазки
winddancer Отправлено: 26 Апреля, 2015 - 17:46:34 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
если ты говоришь о выборке из базы того материала, для которого ты перешел по ссылке, то в строке запроса нужно передавать идентификатор, например ID

Для этого я и сделал вот этот фрагмент

Вопрос... как сделать при нажатии на главную вывод новости, а на остальные else {readfile ('content/1st.php');} ?
winddancer Отправлено: 26 Апреля, 2015 - 17:44:25 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
в чем вообще суть?
(Добавление)
не говоришь ли ты о новостях и о ссылках типа читать далее?



Нажмите для увеличения


Вот то, что у меня есть. если кнопать по ссылкам - всё время отображается только "новости" в главной, а не тексты с других страничек.
winddancer Отправлено: 26 Апреля, 2015 - 17:30:57 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:


Здесь я и обращу внимание на то, что я этот вариант уже пробовал ранее(проскрольте выше). Там я указал, что реакции на переключение ссылок - ноль.
winddancer Отправлено: 26 Апреля, 2015 - 17:26:29 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
Цитата:
Если меняю с mysqli_fetch_assoc на mysql_fetch_assoc - отображает данные, но опять не реагирует на переключение ссылок.

Так ты ж и в запросе используй не MYSQL а MYSQLI!!!!

]
PHP:
скопировать код в буфер обмена
  1. $b = mysqli_query($db, "SELECT id, name, url FROM sms_menu_site");

где $db - переменная с параметрами подключения, вернее с ее помощью уже произвелось подключение ранее, MYSQL - не актуально читай про MYSQLI


Понимаю, но я в даный момент использую Denwer с не установленым модулем MySQLi.
По сему и просил по MySQL помочь ;) Всё же, есть надежда от Вас получить помощь в конкретном вопросе с конкретными "неактуальными" технологиями.
winddancer Отправлено: 26 Апреля, 2015 - 17:18:30 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
file.shreder пишет:
PHP:
скопировать код в буфер обмена
  1.  
  2. $datas = array();
  3. while($content1 = mysqli_fetch_assoc($content)) (
  4. $datas[] = $content1;
  5. }
  6. foreach ($datas as $data):
  7. $id = $data['id'];
  8.                 $title= $data['title'];
  9.                  $title= $data['text'];
  10.                  echo $data['date'];
  11.                 echo $title . "<br>" . $text . "<br><hr><br>";
  12. endforeach;
  13.  
  14.  


Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, resource given on line 20
Если меняю с mysqli_fetch_assoc на mysql_fetch_assoc - отображает данные, но опять не реагирует на переключение ссылок.
winddancer Отправлено: 26 Апреля, 2015 - 17:03:56 • Тема: php + mysql • Форум: Вопросы новичков

Ответов: 17
Просмотров: 931
Многоуважаемые форумчане. Есть такая делема. Раньше я обращался к форуму, не мог составить линки на сайте, до недавних пор попал в гугле на ПРАВИЛЬНУЮ тему не о ссыхках в php, а дин. генерация страниц. Это было то, что мне надо. Пошёл дальше. Решил отказаться от файлов(ибо в том сайте, который я хочу создать будет тысячи страничек).
Итак.
Есть меню. Оно расположено в файле menu.php, подключеному к индексу.
PHP:
скопировать код в буфер обмена
  1. $b = mysql_query("SELECT id, name, url FROM sms_menu_site");
  2. while($row = mysql_fetch_array($b))
  3. {
  4.         $value = $row['name'];
  5.         $key = $row['url'];
  6.         $id = $row['id'];
  7.         if($_GET['page']==$value)
  8.         {
  9.        echo $result[$_GET['page']];
  10.         }
  11.         else
  12.         {
  13.       echo '<a href="'.$key.'">'.$value.'</a>' . ' | ';
  14.         }
  15. }

Есть content.php аналогично подключенный.
PHP:
скопировать код в буфер обмена
  1. $content = mysql_query("SELECT id, title, text, date FROM sms_mainpage");
  2. $b = mysql_query("SELECT id, name, url FROM sms_menu_site");
  3. if ($_GET['url'].$b = 'main')
  4. {
  5.         while($content1 = mysql_fetch_array($content))
  6.         {
  7.                 $id = $content1['id'];
  8.                 $title = $content1['title'];
  9.                 $text = $content1['text'];
  10.                 $date = $content1['date'];
  11.                 echo $title . "<br>" . $text . "<br><hr><br>";
  12.         }
  13. }
  14. else {readfile ('content/1st.php');}


Оно выводит всё из таблицы sms_mainpage, но при переключении всё равно показ идёт с той таблички.

Вопрос: Что я раздолбай делаю не так. Прошу конкретно тыкнуть, чтобы я разобрался. Разберусь - +100 к карме того, кто мне объяснил. Благодарю.
winddancer Отправлено: 18 Марта, 2013 - 14:54:56 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
Ребята. Ну помогите с этим одним. Я пишу дальше с SQL запросами сайт, но только ссылки через массив упёрлись и всё!

Вот для примера массив. Как подключать в розделе контент содержимое страниц?
PHP:
скопировать код в буфер обмена
  1. $adm_menu = array(
  2.         'main' => 'Главная',
  3.         'news' => 'Новости',
  4.         'pages' => 'Страницы',
  5.         'settings' => 'Настройки',
  6. );
  7.        
  8. foreach($adm_menu as $adm_link=>$adm_href){
  9.         echo "<ul style=list-style-type:none>";
  10.                 echo '<li><a href=?page=' . $adm_link . '>' . $adm_href . '</a><br>';
  11.         echo "</ul>";
  12.         };
  13. ?>


Свитчем всё?
winddancer Отправлено: 18 Марта, 2013 - 09:55:06 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
По сути кто-то что-то скажет?
winddancer Отправлено: 17 Марта, 2013 - 13:10:47 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
sympler пишет:
Цитата:
Те, что в даный момент существуют CMS - не подходят, так как они ограничены своими шаблонами и "виджето-функционалом" + в темах ненужная реклама, которая мешает, а в случае того, когда её убираю - возникает ряд ошибок и прочего


не согласен, большинство цмс не ограничивают ничем,
темы к любой цмс можешь сам написать если реклама мешает.

совсем другое: сколько времени ты готов потратить на изучение цмс и ее апи для написания собственного модуля.


Я в том то и дело - трачу. Я не то, чтобы хочу написать ЦМС, я просто хочу написать свой сайт, в котором есть свободный полет фантазий, без лишнего хлама, без ограничений и прочего, что может быть. В доступных ЦМС - есть много классов и объектов, что нафиг людям не надо, но всё же есть. Я не хочу создавать велосипед по новой, но я хочу знать, как этот велосипед работает.
winddancer Отправлено: 17 Марта, 2013 - 12:56:18 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
Ребята. Ну я ведь застрял на этом куске. Дальше увы я знаю и как подключать БД по MySQL и еще дальше. Уперся лишь на ссылках, которые торчат в массивах и их добавлению туда(статическое меню админки, которая нужна для добавления новостей и прочего на сайт).
PHP:
скопировать код в буфер обмена
  1.  
  2. $adm_menu = array(
  3.         'main' => 'Главная',
  4.         'news' => 'Новости',
  5.         'pages' => 'Страницы',
  6.         'settings' => 'Настройки',
  7. );
  8.        
  9. foreach($adm_menu as $adm_link=>$adm_href){
  10.         echo "<ul style=list-style-type:none>";
  11.                 echo '<li><a href=?page=' . $adm_link . '>' . $adm_href . '</a><br>';
  12.         echo "</ul>";
  13.         };
  14. ?>
  15.  

Предположим, что это дело у меня торчит в папке, а файлы main.php/news.php/pages.php... торчат в папке глубже, относительно index.php (в папке includes например). И с выводом меню я разобрался, вот только как сделать так, чтобы постоянно при появлении нового пункта меню, либо многомерного массива - мне не приходилось вручную править $adm_menu = array(), а ссылки автоматом добавлялись и выполнялась проверка?(Так как не видел примеров - выполнить не могу по той глупой причине, что нету подобного материала, а каждый пальнет умной фразой:"Мол сделай так:бла-бла-бла" и пошлет дальше.
winddancer Отправлено: 17 Марта, 2013 - 07:23:30 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
PHP:
скопировать код в буфер обмена
  1.  
  2. include 'pages/'.$page.'.php';
  3.  

Осуществить передачу страницы по такому инклуду - не составляет труда, но вот вопрос, как запихнуть в $_GET ? это никак не получается Хм
winddancer Отправлено: 16 Марта, 2013 - 12:49:23 • Тема: Непуть...я, но прошу о помощи :) • Форум: Программирование на PHP

Ответов: 38
Просмотров: 2157
LIME пишет:
winddancer пишет:
(До file_exists() я еще не дорос малость)
с таким подходом и не дорастешь
раз появилась необходимость значит самое время вникнуть


Ну как не стараюсь, по 10 раз изменив параметры - ничего не получается.

Если делаю с file_exists() - не работает вообще. С этим делом я еще поработаю. Теперь насчет проверки.
Как не крутил с инклудом - подключить с параметром $_GET[' '] не получается. А если его убераю и тыкаю обычную переменную - всё работает. Как не ковыркался - не получается определить, в чем загвоздка.

А всё из-за того, что не видел в действии этого дела. Везде, где можно узнать - узнаешь малость Растерялся

Страниц (8): « 1 2 3 4 5 [6] 7 8 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB