Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/41: Рейтинг темы: голосов - 41, средняя оценка - 4.73
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9

Генерация страниц по шаблону php из БД MySQL

05.05.2013, 00:13. Показов 7950. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую, уважаемые хакеры. Дабы не занимать Вашего времени прошу ссылку на пост, в котором рассмотрен вопрос создания навигации по сайту на основе php шаблона.
В настоящее время имею следующие достижения:
index.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
...
<li><a href="/?id=1" target="_blank">Главная</a></li>
<li><a href="/?id=2" target="_blank">Обо мне</a></li>
<li><a href="/?id=<?php echo $id;?>" target="_blank">Мои работы</a></li>
... 
echo "<h1>".$row[title]."</h1>";
echo $row[content]; 
 
<?php
    
    $mysqli=false;
    function connectDB() {
    global $mysqli;
    $mysqli=new mysqli("localhost", "root", "","mysite-local");
    $mysqli->query("SET NAMES 'utf8'");
    }
    $id = isset($_GET['id']) ? (int) $_GET['id'] : 0;
 
    if ($id > 0)
    {
    mysql_connect("localhost", "root", "") || die('Нет коннекта к базе'); 
 
    mysql_select_db($db) || die('Не удалось выбрать БД'); 
 
    $res = mysql_query('SELECT title, content FROM `settings` WHERE `id` = ' . $id); 
    print_r ($id);
    if ($row = mysql_fetch_array($res));
    }   
?>
В данном случае контент не отображается.
Благодарю за ответ.

 Комментарий модератора 
Внимательнее с выбором раздела.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.05.2013, 00:13
Ответы с готовыми решениями:

Генерация страниц в php
Не могу найти толковое описание как генерировать страницы в php. есть новостной сайт(точнее его наработка), создал ленту новостей на...

генерация страниц на сайте php
Необходимо, чтобы на странице новости выводились записи таблицы, как это сделать правильно, код по требованию приложу. Заранее спасибо!

Генерация страниц с одним Тегом средствами php
Не могу найти нужную информацию, или просто не знаю как правильно сформулировать вопрос. Есть необходимость сделать на сайте Теги. По...

16
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.05.2013, 00:37
а что должно отображаться? Вы выводите только $id, то, что вы извлекаете из БД (если там что-то есть), так и остается не выведенным.
Цитата Сообщение от vlad12345 Посмотреть сообщение
PHP
1
if ($row = mysql_fetch_array($res))
"если получилось взять значения из ресурса, то"...
Цитата Сообщение от vlad12345 Посмотреть сообщение
$res));
..то ничего не делаем

Добавлено через 1 минуту
и вообще, очень странно. Смысл с использования функции connectDB (которая конечно, не очень, но все же), где используется mysqli, и, сразу же после - использования mysql
1
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
05.05.2013, 00:38
Цитата Сообщение от vlad12345 Посмотреть сообщение
В данном случае контент не отображается.
а где вообще попытка ОТОБРАЗИТЬ контент?
1
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
05.05.2013, 00:59  [ТС]
Уважаемые ГУРУ, я абсолютно согласен с Вашей критикой. Но я только осваиваю данную тему. Поэтому, если можно, будьте добры ссылку на подобный работающий пример или ресурс. Спасибо.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.05.2013, 01:00
не было критики.. Было указание на ошибки..
Для начала почитайте здесь Работа с БД MySQL

Добавлено через 21 секунду

Не по теме:

Цитата Сообщение от vlad12345 Посмотреть сообщение
Уважаемые ГУРУ
я не гуру, просто интересуюсь..

1
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
05.05.2013, 01:03
Цитата Сообщение от vlad12345 Посмотреть сообщение
Но я только осваиваю данную тему
вопрос в том, что "осваивая" желательно понимать, что делаешь.
пример:
вот этот код:

Цитата Сообщение от vlad12345 Посмотреть сообщение
PHP
1
2
3
$res = mysql_query('SELECT title, content FROM `settings` WHERE `id` = ' . $id); 
 print_r ($id);
 if ($row = mysql_fetch_array($res));
ВЫ САМИ в состоянии объяснить в том плане, ЧТО ИМЕННО вы пытались сделать?
0
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
05.05.2013, 20:29  [ТС]
Господа, ознакомился с темой "Работа с БД MySQL". Переписал код в соответствии с рекомендациями ув. KOPOJI:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
    ini_set('display_errors','On');
    error_reporting(E_ALL|E_STRICT);
    $db = mysqli_connect('localhost', 'root',''); 
    if (mysqli_connect_errno()) die('Ошибка соединения: '.mysqli_connect_error());
    else {
    mysqli_query('SET NAMES utf8') ;
    mysqli_select_db('mysite-local') die('Не удалось выбрать БД'.mysqli_error());
    }
        
    $res = mysqli_query($db,"SELECT `title`, `content` FROM `settings` WHERE `id` = '$id'"); 
    if ($res){
    while ($row = mysqli_fetch_assoc($res)){
    print_r($row) || var_dump($row);
    }
    }
    mysqli_close($db);
?>
Страница шаблона и присоединяемого блока- в прикрепленных файлах

При запросе index.php система выдает:

Parse error: syntax error, unexpected T_EXIT in N:\home\html.loc\www\lib\functions.php on line 8

Подскажите пожалуйста в чем моя ошибка и на правильном ли я пути. Если кто-то уже имеет опыт по данной теме- поделитесь, плиз.
Вложения
Тип файла: txt index.txt (896 байт, 10 просмотров)
Тип файла: txt function.txt (589 байт, 8 просмотров)
Тип файла: txt top.txt (569 байт, 8 просмотров)
0
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
05.05.2013, 20:34  [ТС]
Извиняюсь, 8-я строка в сообщении системы соответствует 10-ой в посте
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
05.05.2013, 21:35
ваш код написан под mysql, но используется mysqli.
Пробуйте либо так
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
    ini_set('display_errors','On');
    error_reporting(E_ALL|E_STRICT);
    $db = mysql_connect('localhost', 'root',''); 
    $db || die('Ошибка соединения: '.mysql_error());
 
    mysql_query('SET NAMES utf8') ;
    mysql_select_db('mysite-local') or die('Не удалось выбрать БД'.mysql_error());
        
    $res = mysql_query("SELECT `title`, `content` FROM `settings` WHERE `id` = '$id'"); 
    if ($res){
    while ($row = mysql_fetch_assoc($res)){
    print_r($row) || var_dump($row);
    }
    }
    mysql_close($db);
?>
либо так
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
    ini_set('display_errors','On');
    error_reporting(E_ALL|E_STRICT);
    $db = mysqli_connect('localhost', 'root','', 'mysite-local'); 
    !mysqli_connect_errno() || die('Ошибка соединения: '.mysqli_connect_error());
 
    mysqli_query($db, 'SET NAMES utf8') ;
        
    $res = mysqli_query($db,"SELECT `title`, `content` FROM `settings` WHERE `id` = '$id'"); 
    if ($res){
    while ($row = mysqli_fetch_assoc($res)){
    print_r($row) || var_dump($row);
    }
    }
    mysqli_close($db);
?>
Правда, непонятно, что вы хотите сделать данной строчкой
PHP
1
print_r($row) || var_dump($row);
т.к., тут всегда будет выполняться первое условие, т.е., данный код будет равнозначный такому:
PHP
1
print_r($row);
0
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
06.05.2013, 06:46  [ТС]
Здравствуйте уважаемый KOPOJ. Код я писал, соблюдая синтаксис, указанный в теме "Работа с БД MySQL", при этом, сорри, строку о кодировке "mysqli_query($db, 'SET NAMES utf8') ;" на языке msqli не нашел.Один респондент мне указал на следующую ошибку:

"Это синтаксическая ошибка. У вас нет операторных скобок.

У вас:"

PHP
1
2
if (mysqli_connect_errno()) die('Ошибка соединения: '.mysqli_connect_error());
else {
и т.д.

надо:
PHP
1
2
if (mysqli_connect_errno()) { die('Ошибка соединения: '.mysqli_connect_error()); }
else {
Как Вы считаете- он прав?

Добавлено через 8 минут
данной строкой
PHP
1
print_r($row) || var_dump($row);
я собирался посмотреть значение переменной $row.
символ "||" рассматриваю как альтернативу "print_r($row)"
оператором "var_dump($row)" собираюсь отобразить значение NUL переменной, согласно Вашей рекомендации. Или я ее не правильно понял?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
06.05.2013, 09:24
Цитата Сообщение от vlad12345 Посмотреть сообщение
Как Вы считаете- он прав?
нет. Для одного действия операторные скобки необязательны.
Цитата Сообщение от vlad12345 Посмотреть сообщение
Или я ее не правильно понял?
не совсем. var_dump() необходимо, если вы хотите посмотреть значение переменной. В вашем случае для этого достаточно будет print_r - т.к., повторюсь, var_dump() никогда не выполнится, т.к. print_r возвращает TRUE (если только не использовать второй параметр - тогда может вернуть false).
Цитата Сообщение от vlad12345 Посмотреть сообщение
на языке msqli не нашел
это какой? mssql ? Или mysqli ?
Если mysqli, то так
PHP
1
mysqli_set_charset($db, 'utf8');
1
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
28.05.2013, 07:06  [ТС]
Здравствуйте уважаемый KOPOJ. Изучаю Codeigniter. Мне нужно по ссылке в меню сгенерировать среднюю часть страницы, которую я хотел бы получать из базы данных напрямую (без использования view). В базе данных имеется две таблицы "menu" и "settings".
Пункты меню выводятся из базы без проблем при этом в них в последний сегмент подставляются "title_ur". Но "title_ur" ссылается на вид. А я не хочу для каждого пункта меню использовать свой вид.
Таблица "settings" имеет следующие поля: id, alias, title и content. Выводить собираюсь поля " content " и "title" в зависимости от значения "alias", который равен значению "title_ur" в таблице "menu".
Подскажите пожалуйста как правильно организовать ссылки в меню, чтобы генерировать требуемый контент на странице. Идея проставлена в прикрепленном файле...хочу реализовать то же самое только с помощью Codeigniter. Или подскажите как организовать ссылки на msql.
Спасибо.
Владимир.
Вложения
Тип файла: txt Создание PHP+MySQL сайта.txt (7.1 Кб, 21 просмотров)
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.05.2013, 07:16
Цитата Сообщение от vlad12345 Посмотреть сообщение
А я не хочу для каждого пункта меню использовать свой вид
что значит "для каждого пункта меню использовать свой вид" ? Обычно делают один общий шаблон вывода чего-либо(меню) и один "подшаблон" где прописан вывод ссылок. Если честно, совершенно не помню, как это реализовано в CI, в Yii это обычно реализуется именно так, как я сказал(с помощью CActiveDataProvider и т.п.). На голом пыхе можно реализовать подобное, например, как-то так:

PHP
1
2
3
4
.....
$res = $db->query('.......');
while($model = $res->fetch(PDO::FETCH_OBJ))
    include '_view.php';
а непосредственно в _view.php писать сам вывод, например, такой
PHP
1
2
<?php
echo htmlspecialchars($model->name), '<br>', date('Y.m.d H:i', $model->date), '<hr>';
0
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
28.05.2013, 07:26  [ТС]
Поясните пожалуйста что это "Yii, CActiveDataProvider, (.'Y.m.d H:i')"
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.05.2013, 08:27
гугл же работает вроде..
Yii
CActiveDataProvider - http://www.yiiframework.com/do... st.display
date('Y.m.d H:i', ...)
0
 Аватар для vlad12345
0 / 0 / 0
Регистрация: 04.05.2013
Сообщений: 9
28.05.2013, 08:41  [ТС]
Просвятился насчет Yii - другой фреймовик. Я так понимаю- без представлений мне не обойтись? Нарисуйте пожалуйста принципиальную блок схему как реализовать мою задачу а то я не совсем понимаю связку контроллер-модель-метод-представление. Спасибо.
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
28.05.2013, 08:49
почему не обойтись, можно и без них.. Просто большинство фреймворков рассчитаны на использование MVC - так почему бы и не использовать.. схема есть на вики http://ru.wikipedia.org/wiki/Model-View-Controller
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.05.2013, 08:49
Помогаю со студенческими работами здесь

Php вывод динамических страниц из mysql
Всем здравствуйте!!! Делаю первый сайт на php mysql, соответственно знаю оч. плохо. В данный момент не могу решить следующую...

AJAX для PHP страниц подгружаемых из MySQL
Страницы формируются с помощью PHP. В PHP проверяются условия if ($tags) {include(&quot;tmpl/tags.php&quot;);} //страница ссылок else ...

Считывание и генерация информации по шаблону с БД
У меня есть задача : необходимо написать приложение на Java, которое сделает следующее: считает с базы данных информацию и сгенерирует...

Генерация новостей (записей) по шаблону из почты
Добрый день, подскажите можно ли генерировать страницы или записи по шаблону из писем присланных админу, или скрипт или плагин?

Генерация новой страницы по шаблону HTML
Здраствуйте:) У меня есть готовая страница со статьями и под каждой статьей кнопка со ссылкой на страницу с полной информацией. &lt;a...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK сделайте это, JDK, то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Перейдите по ссылке:. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru