Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для vpnwz151
10 / 11 / 3
Регистрация: 03.11.2011
Сообщений: 129

Ошибка в массиве

19.04.2013, 09:54. Показов 900. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Просидел целую ночь так и не понял как вывести на главную с базы данных информацию выдает ошибку
Название таблички index

Index
Кликните здесь для просмотра всего текста
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
<?php 
include('conf/db_fns.php');
 
if(empty($_GET['view'])) $view = 'index';
else $view = $_GET['view'];
 
 
$page_data = page_data($view);
 
switch($view)
{
    case "index":
 
    break;
    
    case "news":
        $news = select_data($view);
    break;
    
    case "service":
        $service = select_data($view);
    break;
 
}
 
include ($_SERVER['DOCUMENT_ROOT'].'/views/layouts/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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php 
 
function db_connect()
{
    $host = "localhost";
    $user = "root";
    $pswd = "7z82fs11";
    $db = "my";
    
    $connection = mysql_connect($host, $user, $pswd);
    mysql_query("SET NAMES utf8");
    if(!$connection || !mysql_select_db($db, $connection))
    {
        return false;
    }
    return $connection;
}
 
/*Меню*/
    function db_result_to_array($result)
    {
        $res_array = array();
        $count = 0;
        while($row = mysql_fetch_array($result))
        {
            $res_array[$count] = $row;
            $count++;   
        }
        return $res_array;
    }
    
    function get_menu()
    {
        db_connect(); /*Подключение к базе*/
        
        $query = "SELECT * FROM pages";  /*Делаем выборку с таблицы pages */
        
        $result = mysql_query($query); /*Сохроняем result */
        
        $result = db_result_to_array($result);
        return $result;
    }
 
function page_data($title)
{
    db_connect();
    $query = sprintf ("SELECT * FROM pages WHERE pages.title_url = '%s' ",
    mysql_real_escape_string($title));
    
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    return $row;    
}
 
function select_data($table)
    {
        db_connect(); /*Подключение к базе*/
    
        $query = ("SELECT * FROM news ORDER BY news.id DESC");
    
        $result = mysql_query($query); /*Сохроняем result */
    
        $result = db_result_to_array($result);
        return $result;
    }
 
?>


Вывожу new
PHP
1
2
3
4
5
6
7
[SPOILER]<?foreach($news as $item):?>
<div class="news">
               <h3><?=$item['title'];?></h3><br/>
               <p style="text-indent:40px;"><?=$item['text'];?></p><br/>
               <p style="margin:0px 70%;">Опубликовано:<?=$item['date'];?></p>
               </div>
<?endforeach;?>[/SPOILER]

Шаблон хтмл
Кликните здесь для просмотра всего текста
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
30
31
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><?=$page_data['title'];?></title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
</head>
<body>
 
<div id="head"></div>
 
<div id="content">
 
        <div id="content_left_menu">
           <img src="img/menu.png" /><br/><br/>
           <?php 
           $menu = get_menu();
           foreach($menu as $item):?>
           <a href="index.php?view=<?=$item['title_url'];?>"><?=$item['title'];?></a>
           <?endforeach;?>
         </div>
         
          <div id="content_center">
           <?php include ($_SERVER['DOCUMENT_ROOT'].'/views/pages/'.$view.'.php');?>
          </div>
</div>
 
<div style="margin-left:82%;" id="footer"><p>Web Studio © Style</div>
 
</body>
</html>


Добавлено через 9 минут
Кстати вот ошибка Warning: Invalid argument supplied for foreach() in C:\AppServ\www\views\pages\index.php on line 1
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.04.2013, 09:54
Ответы с готовыми решениями:

Ошибка в массиве
Текст задания Создать класс равносторонний треугольник, член класса – длина стороны. Предусмотреть в классе методы вычисления и вывода...

ошибка в массиве
Пишу прогу которая будет создавать файлов сколько ты захочешь 8-) но вот она выдaет ошибку strcat :stop:was not declared что делать...

Ошибка в массиве
Здравствуйте.Мне сказали, что в самом первом задании в программе нужен вместо For другой цикл и правильна ли написана Program massive; ...

6
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
19.04.2013, 10:46
вы передаете неверный аргумент в foreach - не массив
0
 Аватар для vpnwz151
10 / 11 / 3
Регистрация: 03.11.2011
Сообщений: 129
19.04.2013, 10:51  [ТС]
Вот сама функция
PHP
1
2
3
4
5
6
7
8
9
10
11
function select_data($table)
    {
        db_connect(); /*Подключение к базе*/
    
        $query = ("SELECT * FROM $table ORDER BY $table.id DESC");
    
        $result = mysql_query($query);
    
        $result = db_result_to_array($result);
        return $result;
    }
Вот передаю
PHP
1
2
3
4
5
6
7
<?foreach($home as $item):?>
<div class="news">
               <h3><?=$item['title'];?></h3><br/>
               <p style="text-indent:40px;"><?=$item['text'];?></p><br/>
               <p style="margin:0px 70%;">Опубликовано:<?=$item['date'];?></p>
               </div>
<?endforeach;?>
Вот сама ошибка Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\conf\db_fns.php on line 24
Я так понимаю сюда Мат идет
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function db_result_to_array($result)
    {
        $res_array = array();
        $count = 0;
        while($row = mysql_fetch_array($result))
        {
            $res_array[$count] = $row;
            $count++;   
        }
        return $res_array;
    }
    
    function get_menu()
    {
        db_connect(); /*Подключение к базе*/
        
        $query = "SELECT * FROM pages";  /*Делаем выборку с таблицы pages */
        
        $result = mysql_query($query); /*Сохроняем result */
        
        $result = db_result_to_array($result);
        return $result;
    }
что не так поправте, в других разделах все гуд вылазит а вот на главную не как не могу выложить.

Забыл еще показать свич
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
30
<?php 
include('conf/db_fns.php');
 
if(empty($_GET['view'])) $view = 'index';
else $view = $_GET['view'];
 
 
$page_data = page_data($view);
 
 
switch($view)
{
    case "index":
        $home = select_data($view);
    break;
    
    case "news":
        $news = select_data($view);
    break;
    
    case "service":
        $service = select_data($view);
    break;
 
}
 
include ($_SERVER['DOCUMENT_ROOT'].'/views/layouts/index.php');
 
 
?>
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
19.04.2013, 11:08
Цитата Сообщение от vpnwz151 Посмотреть сообщение
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
запрос к БД завершился с ошибкой, и вместо ресурса в mysql_fetch_array() пришло не то, что ожидалось.

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function db_result_to_array($result)
    {
        $res_array = array();
        while($row = mysql_fetch_array($result))
            $res_array[] = $row;
        return $res_array;
    }
    
    function get_menu()
    {
        db_connect(); /*Подключение к базе*/
        $query = 'SELECT * FROM pages';  /* Составляем запрос на выборку (А не делаем выборку!) */
        $result = mysql_query($query); /*Делаем выборку с таблицы pages и сохраняем результат в $result */
        return false !== $result ? db_result_to_array($result) : mysql_error();
    }
Цитата Сообщение от vpnwz151 Посмотреть сообщение
PHP
1
<?foreach($home as $item):?>
PHP
1
<?php if(!is_array($home)) exit($home); foreach($home as $item):?>
0
 Аватар для vpnwz151
10 / 11 / 3
Регистрация: 03.11.2011
Сообщений: 129
19.04.2013, 13:43  [ТС]
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php 
 
function db_connect()
{
    $host = "localhost";
    $user = "root";
    $pswd = "7z82fs11";
    $db = "my";
    
    $connection = mysql_connect($host, $user, $pswd);
    mysql_query("SET NAMES utf8");
    if(!$connection || !mysql_select_db($db, $connection))
    {
        return false;
    }
    return $connection;
}
 
/*Меню*/
function db_result_to_array($result)
    {
        $res_array = array();
        while($row = mysql_fetch_array($result))
            $res_array[] = $row;
        return $res_array;
    }
    
    function get_menu()
    {
        db_connect(); /*Подключение к базе*/
        $query = 'SELECT * FROM pages';  /* Составляем запрос на выборку (А не делаем выборку!) */
        $result = mysql_query($query); /*Делаем выборку с таблицы pages и сохраняем результат в $result */
        return false !== $result ? db_result_to_array($result) : mysql_error();
    }
    
    
    
 
function page_data($title)
{
    db_connect();
    $query = sprintf ("SELECT * FROM pages WHERE pages.title_url = '%s' ",
    mysql_real_escape_string($title));
    
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    return $row;    
}
 
 
function select_data($table)
    {
        db_connect(); /*Подключение к базе*/
    
        $query = ("SELECT * FROM $table ORDER BY $table.id DESC");
    
        $result = mysql_query($query);
    
        $result = db_result_to_array($result);
        return $result;
    }
?>
Вот код, у меня голова уже плавится не понимаю некоторых деталей как прикрутить или где исправить!

Добавлено через 2 часа 8 минут
Некто не объяснит в чем проблема?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
19.04.2013, 14:13
чего проблема-то? Выше же уже объяснил
Цитата Сообщение от KOPOJI Посмотреть сообщение
запрос к БД завершился с ошибкой, и вместо ресурса в mysql_fetch_array() пришло не то, что ожидалось.
0
 Аватар для vpnwz151
10 / 11 / 3
Регистрация: 03.11.2011
Сообщений: 129
19.04.2013, 20:45  [ТС]
А как поправить? Где копать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.04.2013, 20:45
Помогаю со студенческими работами здесь

Ошибка в массиве
&lt;?php $list = array(); $list = array(15, &quot;22&quot;, &quot;My string&quot;, true); echo $list; $list = &quot;New Element&quot;; echo &quot;&lt;br/&gt;&quot;; echo...

Ошибка в массиве
Здравствуйте, у меня возникает проблема в массиве. Вот часть программы: for (m=0; m&lt;=max2; m++) {if (b!=0) M]=b;} ...

Ошибка в массиве
for i:=1 to length(s1) do if (s1 in per) then for j:=1 to c do bukv:=s1; Помогите исправить ошибку, проходим...

Ошибка в массиве
Какая ошибка? Parse error: syntax error, unexpected T_DOUBLE_ARROW &lt;? unset($vsya); $vsya=array(); $vsya=( ...

Ошибка в массиве
Добрый день, уважаемые программисты. Прошу у вас помощи с программой. Она выдает ошибку. Задание: вывести произведение в тех строках,...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru