|
|
|
| Прочитал статью как создавать гистограммы.
Так там данные хранятся в таком массиве $sector=array(89, 589, 569, 456, и.тд)
Как из базы занести эти самые данные в этот массив? | |
|
|
|
|
|
|
|
для: technic611
(10.05.2006 в 03:44)
| | А какова структура таблица в общем случае, это выглядит примерно так
<?php
$query = "SELECT val FROM tbl";
$tbl = mysql_query($query);
if(!$tbl) exit(mysql_error());
if(mysql_num_rows($tbl) > 0)
{
while($table = mysql_fetch_array($tbl))
{
$sector = $table['val'];
}
}
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(10.05.2006 в 13:57)
| | Мне нужно брать данные не из одного а из пяти столбиков с назаниями 1, 2, 3, 4, 5. В них находятся число оценок, соответсвующее названию столбца | |
|
|
|
|
|
|
|
для: technic611
(11.05.2006 в 07:37)
| | Приведите дамп таблицы, если не сложно... | |
|
|
|
|
|
|
|
для: cheops
(11.05.2006 в 10:25)
| | -- phpMyAdmin SQL Dump
-- version 2.6.0-pl1
-- http://www.phpmyadmin.net
--
-- Хост: localhost
-- Время создания: Май 13 2006 г., 16:00
-- Версия сервера: 4.0.21
-- Версия PHP: 5.0.1
--
-- БД: ''
--
-- --------------------------------------------------------
--
-- Структура таблицы 'rating'
--
CREATE TABLE 'rating' (
'id_rating' int(11) NOT NULL auto_increment,
'marka' tinytext NOT NULL,
'model' tinytext NOT NULL,
'year' tinytext NOT NULL,
'volume' int(11) NOT NULL default '0',
'trans' enum('m','a') NOT NULL default 'm',
'dvig' tinytext NOT NULL,
'privod' enum('p','z','pl') NOT NULL default 'p',
'kuzov' tinytext NOT NULL,
'tip' enum('s','p','u','h','k','d','m','a','g','kb','mv','r','dr') NOT NULL default 's',
'kompl' tinytext NOT NULL,
'color' tinytext NOT NULL,
'rashod' tinytext NOT NULL,
'srok' tinytext NOT NULL,
'foto' int(1) NOT NULL default '0',
'avtor' tinytext NOT NULL,
'email' tinytext NOT NULL,
'sm' int(11) NOT NULL default '0',
'gorod' int(11) NOT NULL default '0',
'date' date NOT NULL default '0000-00-00',
'text' text NOT NULL,
'ret' int(11) default '0',
'count' int(11) default '0',
'id_marka' int(11) NOT NULL default '0',
'id_model' int(11) NOT NULL default '0',
'1' int(11) NOT NULL default '0',
'2' int(11) NOT NULL default '0',
'3' int(11) NOT NULL default '0',
'4' int(11) NOT NULL default '0',
'5' int(11) NOT NULL default '0',
PRIMARY KEY ('id_rating')
) TYPE=MyISAM AUTO_INCREMENT=1 ;
--
-- Дамп данных таблицы 'rating'
-- | |
|
|
|
|
|
|
|
для: technic611
(11.05.2006 в 10:58)
| | Тогда можно поступить следующим образом
<?php
$query = "SELECT * FROM rating";
$tbl = mysql_query($query);
if(!$tbl) exit(mysql_error());
if(mysql_num_rows($tbl) > 0)
{
while($table = mysql_fetch_array($tbl))
{
$sector[] = $table['1'];
$sector[] = $table['2'];
$sector[] = $table['3'];
$sector[] = $table['4'];
$sector[] = $table['5'];
}
}
?>
|
или нужна доля оценок? Какова исходная задача? | |
|
|
|
|
|
|
|
для: cheops
(11.05.2006 в 12:53)
| | Спасибо, то что надо. Только mysql_num_rows не работает. Если значений в таблице нет, выдается ошибка деления на ноль, как тут можно поступить. Я уже mysql_result применял не помогает | |
|
|
|
|
|
|
|
для: technic611
(12.05.2006 в 05:26)
| | поставить перед mysql_num_rows символ @ => получится @mysql_num_rows
@- подавляет ошибку, и не выводит на страницу php.(Вроде бы так:)) | |
|
|
|
|
|
|
|
для: 4epHbIu
(12.05.2006 в 08:44)
| | Подставил перед mysql_num_rows все равно выдается ошибка.
Подставил около переменной где производится деление. Все работает. Спасибо | |
|
|
|
|
|
|
|
для: technic611
(12.05.2006 в 09:55)
| | А как построить гистограмму (где сам код)? | |
|
|
|
|
|
|
|
для: aleksejtm
(12.05.2006 в 10:49)
| | Я не строил диаграму, а просто удлинял и укорачивал рисунок по высоте на основании полученных данных | |
|
|
|
|
|
|
|
для: aleksejtm
(12.05.2006 в 10:49)
| | >А как построить гистограмму (где сам код)?
Об этом можно почитать более подробно в ответе к задаче 16 или воспользовавшись кодом системы голосования Tabella из раздела downloads.
PS Под новые вопросы лучше заводить новые темы. | |
|
|
|
|
|
|
|
для: technic611
(12.05.2006 в 05:26)
| | Эта функция как раз и предназначена для предотвращения таких ситуаций
<?php
$query = "SELECT * FROM rating";
$tbl = mysql_query($query);
if(!$tbl) exit(mysql_error());
if(mysql_num_rows($tbl) > 0)
{
while($table = mysql_fetch_array($tbl))
{
$sector[] = $table['1'];
$sector[] = $table['2'];
$sector[] = $table['3'];
$sector[] = $table['4'];
$sector[] = $table['5'];
}
}
else
{
exit("К сожалению нет ни одной записи, построение диаграммы не возможно");
}
?>
|
| |
|
|
|