Задание:
"Необходимо выполнить SQL-запрос"
Даны:
Спойлер (Отобразить)
Сам код реализации:
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?php
- //константы для базы
- define("DB_HOST", "localhost");
- define("DB_LOGIN", "login");
- define("DB_PASSWORD", "");
- //подключение базы
- mysql_connect(DB_HOST, DB_LOGIN, DB_PASSWORD) or die(mysql_error());
- mysql_select_db("data") or die(mysql_error());
- //выбор уникальных имен материалов
- $query_header = "SELECT DISTINCT Parts.name as header FROM Parts";
- $result_header = mysql_query($query_header) or die(mysql_error());
- //Выбор заголовков и айдишников
- $query_title = "SELECT Materials.title as title, Links.Pid as partid FROM Materials, Links, Parts WHERE Links.Mid=Materials.id and Links.Pid=Parts.id";
- $result_title = mysql_query($query_title) or die(mysql_error());
- $news = ''; //Массив для новостей
- $publics = ''; //Массив для публикаций
- //Заполнение массивов для новостей и публикаций
- while($f = mysql_fetch_array($result_title, MYSQL_ASSOC)){
- if($f[partid]==1){
- $news[] = $f[title];
- }
- else{
- $publics[] = $f[title];
- }
- }
- //Вывод шапки таблицы по названию материала
- echo "<table border=0 cellpadding=5 cellspacing=5><tr>";
- while($f = mysql_fetch_array($result_header, MYSQL_ASSOC)){
- echo "<td><h2>".$f[header]."</h2></td>";
- }
- echo "</tr>";
- //Получение максимального значения рядов таблицы
- //Заполнение таблицы
- for($i=0;$i<$rows;$i++){
- echo "<tr><td>".$news[$i]."</td><td>".$publics[$i]."</td>";
- echo "</tr>";
- }
- echo "</tr></table>";
- ?>