Нужна помощь по php и БД
Страницы: 1
Нужна помощь по php и БД
Скажу сразу я в этом полный ноль, но надо!
Есть такая тема помогите поподробней, если вам не в напряг!

Итак сначала создаем таблицу в бд DLE
Код
CREATE TABLE `dle_perelink` (
  `id` int(255) NOT NULL,
  `url` varchar(200) NOT NULL,
  `link1` varchar(1000) NOT NULL,
  `link2` varchar(1000) NOT NULL,
  `link3` varchar(1000) NOT NULL,
  `link4` varchar(1000) NOT NULL,
  `link5` varchar(1000) NOT NULL
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251;

Не забудем сменить кодировку если у вас DLE работает на utf8. Таблица простая, в поле url будет ссылка на страницу где будут отображаться ссылки из полей link1, link2 и т.д.

Теперь приступаем к наполнению нашей таблицы данными. Вот скрипт

<?
$hostname = "localhost";
$username = "root";
$password = "pass";
$dbName = "vashaDB"; 

mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
mysql_select_db($dbName) or die(mysql_error());
$links = file("links.txt");
$li=0;
$sql = "SELECT * FROM `dle_post`";
$result = mysql_query($sql);
while($data = mysql_fetch_array($result))
{
$id=$data[id];
$alt=$data[alt_name];
$url="http://domain.ru/$id-$alt.html";
$sql="INSERT INTO dle_perelink (`id`,`url`, `link1`, `link2`, `link3`, `link4`,
 `link5`) VALUES('".$data[id]."','".$url."', '".$links[$li]."', '".$links[$li+1]."',
 '".$links[$li+2]."', '".$links[$li+3]."', '".$links[$li+4]."')";
mysql_query($sql);
$li++;
}
echo "Информация занесена в базу данных.";
mysql_close();
?>

Небольшие пояснения.  Указываем ваши данные для подключения к БД DLE. Рядом со скриптом должен лежать файл links.txt с вашими ссылками в формате.

<a href="http://domain.ru/95-title.html">текст</a>
<a href="http://domain.ru/72-title.html">текст</a>
<a href="http://domain.ru/69-title.html">текст</a>

Если вы убрали id поста из ссылки, работать не будет. В первоначальном скрипте привязка ссылок идет к id поста на вордпрессе и последующий вывод из по id поста. Я не нашел как это сделать в DLE, поэтому сделал по принципу который первый пришел на ум. Сделал проверку урла страницы и если найдено соответствие к ней в БД, последующий вывод ссылок. Если кто предложит что попроще, я буду рад.

Не забываем поменять domain.ru на ваш. Так же если в базе за место кириллицы будут  знаки вопроса вставляем в скрипт

mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");

Кодировку меняем на свою.  Ну и сам вывод ссылок

<?
$a=$_SERVER['REQUEST_URI'];
$b="http://domain.ru$a";
$hostname = "localhost";
$username = "root";
$password = "pass";
$dbName = "vashaDB";
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение ");
mysql_select_db($dbName) or die(mysql_error());
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
$sql = "SELECT * FROM `dle_perelink` WHERE '".$b."' = `url`";
$result = mysql_query($sql);
$array = mysql_fetch_array($result);
print $array[link1];
print "<br>";
print $array[link2];
print "<br>";
print $array[link3];
print "<br>";
print $array[link4];
print "<br>";
print $array[link5];
mysql_close();
?>

Теперь открываем файл fullstory.tpl в папке с вашим шаблоном. Вставляем {include file=»путьдонашегоскрипта/linksout.php»}
Забыл вопрос написать? smile:confused:
Обесните как быть с таблицей не пойму как в ней прописывать
и куда пихать первый и второй скрипты
переходим в phpmyadmin, выбираем свою бд, далее вкладка sql и в появившееся поле вставляем
Код
CREATE TABLE `dle_perelink` ( 
  `id` int(255) NOT NULL, 
  `url` varchar(200) NOT NULL, 
  `link1` varchar(1000) NOT NULL, 
  `link2` varchar(1000) NOT NULL, 
  `link3` varchar(1000) NOT NULL, 
  `link4` varchar(1000) NOT NULL, 
  `link5` varchar(1000) NOT NULL 
) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=cp1251;


Теперь создаем файл например zap.php и вставляем туда

Код
<? 
$hostname = "localhost"; 
$username = "root"; 
$password = "pass"; 
$dbName = "vashaDB"; 

mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_select_db($dbName) or die(mysql_error()); 
$links = file("links.txt"); 
$li=0; 
$sql = "SELECT * FROM `dle_post`"; 
$result = mysql_query($sql); 
while($data = mysql_fetch_array($result)) 
{ 
$id=$data[id]; 
$alt=$data[alt_name]; 
$url="http://domain.ru/$id-$alt.html"; 
$sql="INSERT INTO dle_perelink (`id`,`url`, `link1`, `link2`, `link3`, `link4`, 
 `link5`) VALUES('".$data[id]."','".$url."', '".$links[$li]."', '".$links[$li+1]."', 
 '".$links[$li+2]."', '".$links[$li+3]."', '".$links[$li+4]."')"; 
mysql_query($sql); 
$li++; 
} 
echo "Информация занесена в базу данных."; 
mysql_close(); 
?>

вписываем свои данные в скрипт,
заливаем его в корень и набираем site.ru/zap.php
Удаляем zap.php

Далее создаем файл linksout.php и вставляем в него, прописав настройки подключения к бд.

Код
<? 
$a=$_SERVER['REQUEST_URI']; 
$b="http://domain.ru$a"; 
$hostname = "localhost"; 
$username = "root"; 
$password = "pass"; 
$dbName = "vashaDB"; 
mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); 
mysql_select_db($dbName) or die(mysql_error()); 
mysql_query ("set character_set_client='cp1251'"); 
mysql_query ("set character_set_results='cp1251'"); 
mysql_query ("set collation_connection='cp1251_general_ci'"); 
$sql = "SELECT * FROM `dle_perelink` WHERE '".$b."' = `url`"; 
$result = mysql_query($sql); 
$array = mysql_fetch_array($result); 
print $array[link1]; 
print "<br>"; 
print $array[link2]; 
print "<br>"; 
print $array[link3]; 
print "<br>"; 
print $array[link4]; 
print "<br>"; 
print $array[link5]; 
mysql_close(); 
?>

и заливаем его например в корень
Остальное в инструкции написано
Изменено: igoryanzx1 - 13 Октября 2011 03:46
igoryanzx1,
Человеческое спасибо!!!!!!
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
16:55 Яндекс прекращает поддержку технологии Турбо 
16:44 «Хлебные крошки» в адресе сайтов исчезнут из результатов поиска Google 
16:38 ру гембла 
10:59 DreamCash.tl - заработок на онлайн-видео. До 95% отчислений, отличный конверт! 
09:06 Бесплатные посещения 
01:10 Adsense личный опыт 
22:07 Помогите найти шаблон 
04:14 Просто $0.04/IP 9PROXY.COM Резидентные прокси Неограниченная пропускная способность Уникальная политика замены Без чёрного списка 
21:36 Coin Click.cc - Быстрый и надежный обмен электронных валют в два клика 
20:25 TrueMeds - Революционная Фарма Партнерка! Увеличь свой профит в x2 раза вместе с нами! 
19:14 Анализ курсов и недежности обменников - Kurs.Expert 
18:02 Новый обменный сервис «Money-office» 
16:31 Качественные услуги по телеграм (инвайт, рассылка)(Invite, mailing list) 
15:46 CoinCapital  
03:08 Точные прогнозы на футбол 
00:55 С юмором по жизни! 
10:05 Китайский ИИ-ассистент DeepSeek начали запрещать в некоторых странах 
21:05 Telegram не смог провести различие между требованиями автократических режимов и законными демократическими запросами 
08:12 Ням-ням! - 8 деликатесов, которые когда-то ели только бедные люди 
07:48 США готовят закон для уничтожения пиратских сайтов во всех странах мира 
02:10 [Новая партнерка] Goldbet Partners — прямой рекламодатель одноименного казино Goldbet