Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Титлы для модулей, разные названия 
:(
    Опции темы
PARROT
Дата 13.7.2006, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Вот, есть у меня разные файлы, каждый из которых отвечают за ту или иную тему (движок).
Код

mod1 - модуль по умолчанию, с него грузится сайт
mod2 - этот отвечает за технику
mod3 - отвечает за поиск по сайту
mod4 - отвечает за каталог ссылок, вывод

Вопрос: Как сделать так, чтобы титлы у этих файлов были разными? по номеру
Инфа берется из базы. Понимаю, что нужно проверять какой именно вызван сейчас модуль если такой, то берем из соответствующей таблицы титлы.

Я просто незнаю откуда начать копать и в какую сторону. Сама не пробовала, незнаю почему. Хотелось бы пример и маленькую подсказку. Титлы сейчас работают только для mod2
http://www.abmi.ru
Если зайти в каталог то...

Спасибо всем, кто подтолкнет меня к истине.  smile    


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Здраствуйте.

Ход рассуждений у Вас правильный. В начале каждого модуля давайте напишем 
Код

define('MOD', 'id_модуля');


Когда подключается модуль константа MOD будет иметь значение идентификатора модуля (mod1, mod2, mod3, mod4).

Далее просто делается запрос
Код

SELECT title FROM mod_titles WHERE mod_id='" . MOD ."'


Собственно значение которое нам вернули мы и подставляем в тэг <title></title> 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Да, но только титлы находятся выше подключаемого модуля, поэтому переменная MOD не ловится, она пуста и ничего не печатает.  smile

Добавлено @ 11:25 
title.php
Код

<?php
if (!isset($_GET['id'])) $_GET['id']=1;
$out = mysql_query("SELECT id,tit,kluch,descr FROM title WHERE id='" . MOD ."'") or die(mysql_error());
if (@mysql_num_rows($out) == 1) {
        $resl_arr=mysql_fetch_row($out);
        $titl=$resl_arr[1];
        $keys=$resl_arr[2];
        $desk=$resl_arr[3];

}
?>

index.php
Код

<?php
//подключаемся к базе
include("include/config.php");
include ("include/title.php"); подключаем титлы
if (!isset($mod) || ($mod=="") || (!file_exists ("mods/$mod.php"))) {
$mod=$sys_def_mod;//модуль по умолчанию 1
}
?>
<html>
<head>
<base href='http://abmi/'>
<Meta http-equiv='content-type' Content='text/html; charset=Windows-1251'>
<Meta name="Keywords" Content="<? echo $keys; ?>">
<Meta name="Description" Content="<? echo $desk; ?>">
<Meta name="Author" Content="Majorova Nataliya">
<Meta name="Reply-to" Content="[email protected]">
<Meta Name="Date" Content="May 11 2006 18:00 Am">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

<title><? echo $titl;?></title>
<link rel="stylesheet" href="include/styles.css" type="text/css">
</head>

<body bgcolor="#DEDEDD" topmargin='0' leftmargin='0' bottommargin='0'  rightmargin='0'>
<?
include("include/top.php");
include("mods/$mod.php");//подключаемый модуль
include("include/bottom.php");
?>
</body>
</html>
 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 11:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Поставьте 4-ю строчку index.php после 5-ой. 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 12:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



GiV, не помогает  smile , история таже, титлы пусты. 
Наверху каждого модуля:
Код

define('MOD', '1'); 

index.php
Код

include("include/config.php");

if (!isset($mod) || ($mod=="") || (!file_exists ("mods/$mod.php"))) {
$mod=$sys_def_mod;
}
include ("include/title.php"); титлы
?>
<html>
 

Это сообщение отредактировал(а) PARROT - 13.7.2006, 12:09


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



А если include/title.php будет таким?

Код

<?php
if (!isset($_GET['id'])) $_GET['id']=1;
$out = mysql_query("SELECT id,tit,kluch,descr FROM title WHERE id='" . $mod ."'") or die(mysql_error());
if (@mysql_num_rows($out) == 1) {
        $resl_arr=mysql_fetch_row($out);
        $titl=$resl_arr[1];
        $keys=$resl_arr[2];
        $desk=$resl_arr[3];
}
?>


 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Та же Петрушка.
Ничего не печатает.
Код

<Meta name="Keywords" Content="">
<Meta name="Description" Content="">
<Meta name="Author" Content="Majorova Nataliya">
<Meta name="Reply-to" Content="[email protected]">
<Meta Name="Date" Content="May 11 2006 18:00 Am">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">

<title></title>
 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



А должно =)

index.php
Код

include("include/config.php");
if (!isset($mod) || ($mod=="") || (!file_exists ("mods/$mod.php"))) {
$mod=$sys_def_mod;
}
include ("include/title.php"); титлы
?>
<html>


title.php
Код

<?php
if (!isset($_GET['id'])) $_GET['id']=1;

echo "SELECT id,tit,kluch,descr FROM title WHERE id='" . $mod ."'";

$out = mysql_query("SELECT id,tit,kluch,descr FROM title WHERE id='" . $mod ."'") or die(mysql_error());
if (@mysql_num_rows($out) == 1) {
        $resl_arr=mysql_fetch_row($out);
        $titl=$resl_arr[1];
        $keys=$resl_arr[2];
        $desk=$resl_arr[3];
}
?>


Что выводит? 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Код

SELECT id,tit,kluch,descr FROM title WHERE id='mod2' 


Добавлено @ 12:34 
В принципе печатает правильно, модуль 2 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Теперь можете привести содержимое таблицы title ? 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 12:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



но в титлах ничего не печатает.

Добавлено @ 12:45 
Код

INSERT INTO `title` VALUES (1, 'АБМ Индустрия', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.', 'О компании, Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.');
INSERT INTO `title` VALUES (2, 'Фронтальные погрузчики ZL 30-II, ZL50F', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики,ZL 30-II, ZL50F, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, ZL 30-II, ZL50F, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.');
INSERT INTO `title` VALUES (3, 'Вилочные автопогрузчики 3-7 тонн DFH', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики,3-7 тонн DFH, Грузоподьемность, Подъем, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, 3-7 тонн DFH, Грузоподъемность, Подъем, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.');
INSERT INTO `title` VALUES (4, 'Дорожные катки LSD212H, LSD226H', 'Китайская спецтехника,Доставка, Контакты, Модели спецмашин, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, LSD212H, LSD226H, Эскаваторы, Бульдозеры, Эскаваторы.', 'Китайская спецтехника,Доставка, Контакты, Модели спецмашин, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, LSD212H, LSD226H, Эскаваторы, Бульдозеры, Эскаваторы.');
INSERT INTO `title` VALUES (5, 'Эскаваторы WY10/WY10R, WY4.0-6', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, WY10/WY10R, WY4.0-6, Модели спецмашин, Бульдозеры, Эскаваторы.', 'Китайская спецтехника,Доставка, Контакты, Модели спецмашин, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, WY10/WY10R, WY4.0-6, Бульдозеры, Эскаваторы.');
INSERT INTO `title` VALUES (6, 'Бульдозеры гусеничныеT80/TG80, T120A/T120G', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры гусеничные, T80/TG80,T120A/T120G, T100B/TS100, T90/T100, TY165/T140, T100G/T100G-II,\r\nЭскаваторы, Асфальтоукладчики.', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры гусеничные, T80/TG80,T120A/T120G, T100B/TS100, T90/T100, TY165/T140, T100G/T100G-II,\r\nЭскаваторы, Асфальтоукладчики.');
INSERT INTO `title` VALUES (7, 'Асфальтоукладчики HP75/HP95, SP75/SP125', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы, Асфальтоукладчики, HP75/HP95, SP75/SP125.', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы,Асфальтоукладчики, HP75/HP95, SP75/SP125.');
INSERT INTO `title` VALUES (8, 'Контакты', 'Китайская спецтехника,Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы.', 'О компании, Доставка, Контакты, Фронтальные Погрузчики, Вилочные Автопогрузчики, Дорожные катки, Эскаваторы, Бульдозеры, Эскаваторы, Прайс-лист, Россия, Санкт-Петербург, Химический переулок.');
 
 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Угу. Стоит добавить еще один аттрибут в таблицу titles
Код

ALTER TABLE title ADD module VARCHAR(10);


В этом аттрибуте будут в каждой записи модули к которым title принадлежит.

Например 'Фронтальные погрузчики ZL 30-II, ZL50F' принадлежат модулю mod2

Запрос $out = mysql_query("SELECT id,tit,kluch,descr FROM title WHERE module ='" . $mod ."'") or die(mysql_error()); будет выдавать тайтл для модуля, но есть одно но! Я так понял id это аттрибут со свойством auto_increment? 
PM MAIL WWW ICQ   Вверх
PARROT
Дата 13.7.2006, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



Цитата(GiV @  13.7.2006,  14:10 Найти цитируемый пост)
Я так понял id это аттрибут со свойством auto_increment?  

Нет.
Код

CREATE TABLE `title` (
  `id` int(11) NOT NULL default '0',
  `tit` varchar(60) NOT NULL default '',
  `kluch` text NOT NULL,
  `descr` text NOT NULL,
  PRIMARY KEY  (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;


Добавлено @ 13:36 
В базу добавила поле module+изменила title.php , но пока никаких изменений нет. Не печатает ничего.

Добавлено @ 13:39 
Код

$out = mysql_query("SELECT id,tit,kluch,descr FROM title WHERE module ='" . $mod ."' AND id=".$_GET['id']."") or die(mysql_error());

Все! Спасибо! Заработало! УРА!!! 
Спасибо, GiV !  smile

Добавлено @ 13:41 
Правда, да. Наверно стоит добавить еще одно поле, потому что у всех модулей есть как 1 так и двойка и т.д. и по нему выводить  smile , да? 


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
GiV
Дата 13.7.2006, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 13.7.2006
Где: rus|53

Репутация: 4
Всего: 9



Цитата(PARROT @  13.7.2006,  13:27 Найти цитируемый пост)
Правда, да. Наверно стоит добавить еще одно поле, потому что у всех модулей есть как 1 так и двойка и т.д. и по нему выводить  smile , да? 

Я именно по этому и спрашивал про поле id и его свойство auto_increment =) 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0604 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.