Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывести общее количество стран в результирующей строке таблицы
 
 автор: kaya   (01.04.2010 в 18:26)   письмо автору
 
 

Проблема вот в чём:

<table border="0">
                            <tr align="right">
                                <td>
                                    <table>
                                        <tr>
                                            <td>Total Countries:</td>
                                            <td><input type="text" name="Total Countries" size="3";></td>
                                        </tr><tr>
                                            <td>Total Orders:</td>
                                            <td><input type="text" name="Orders" size="3";></td>
                                        </tr><tr>
                                            <td>Leader of Countries:</td>
                                            <td><input type="text" name="Leader of Countries" size="3";></td>
                                        </tr>
                                    </table>
--------Это таблица


$query=Tep_db_query($countries.$from.$where);
           while ($country =Tep_db_fetch_array ($query)){
               if(isset($temp[$country['customers_country']])){

                   //$temp[$country['customers_country']]['num_orders']++;
                $temp[$country['customers_country']]++;
               }else{
                   //$temp[$country['customers_country']]=array('countries_id'=>$country['countries_id'],
                                           // 'num_orders'=>1);
                $temp[$country['customers_country']]=1;
               }
        }
--------Это мой массив

Нужно чтобы в таблице вывелись окончательные данные т.е. если нашлось 150 стран, чтобы эта цифра нарисовалась в * total countries*.
Как это можно сделать?

  Ответить  
 
 автор: sim5   (01.04.2010 в 18:44)   письмо автору
 
   для: kaya   (01.04.2010 в 18:26)
 

Если вы обрабатывая ресурс, формируете массив, элементы которого потом помещаете в таблицу, то число элементов этого массива и даст вам число необходимое. В чем проблема?

  Ответить  
 
 автор: kaya   (01.04.2010 в 18:50)   письмо автору
 
   для: sim5   (01.04.2010 в 18:44)
 

A mojno mne pokazat eto na primere?Spasibo

  Ответить  
 
 автор: sim5   (01.04.2010 в 18:55)   письмо автору
 
   для: kaya   (01.04.2010 в 18:50)
 

count(array) - вот и весь пример. В мануал заглянуть, только лишь всего. ;-)

  Ответить  
 
 автор: kaya   (01.04.2010 в 18:59)   письмо автору
 
   для: sim5   (01.04.2010 в 18:55)
 

Izvinite menya , chainika, a gde ya ispolzuyu funkciyu count()? I chto takoe manual?:(:(

  Ответить  
 
 автор: sim5   (01.04.2010 в 19:12)   письмо автору
 
   для: kaya   (01.04.2010 в 18:59)
 

http://www.phpfaq.ru/docs

count - считает элементы в переменной.

Описание
int count (mixed var)

Возвращает количество элементов в var, которая обычно является array (поскольку все остальные состоят из одного элемента).

Если var это не массив, будет возвращено 1 (исключение: count(NULL) равно 0).

Предупреждение!
count() может возвращать 0 для переменной, которая не установлена, но может также возвращать 0 для переменной, которая была инициализирована пустым массивом. Используйте isset() для проверки того, установлена ли переменная.


Пример 1. count()
$a[0] = 1;
$a[1] = 3;
$a[2] = 5;
$result = count ($a);
// $result == 3

$b[0] = 7;
$b[5] = 9;
$b[10] = 11;
$result = count ($b);
// $result == 3;

Примечание: функция sizeof() это псевдоним для count().

*****

Если вы получили массив, который равен чуслу выводимых элементов в таблицу, то вне цикла формирующего таблицу выводите ячейку, в которой с помощью функции count получите число записей ваших. Вам ведь это надо?

  Ответить  
 
 автор: kaya   (01.04.2010 в 19:16)   письмо автору
 
   для: sim5   (01.04.2010 в 19:12)
 

Da, imenno, no problema v tom chto ya ne znayu kak u gde ispolzovat etu funkciyu v svoyom kode:(:( Y voobshe ne predstavlyau kak etot kod viglyadit:(:(

  Ответить  
 
 автор: sim5   (01.04.2010 в 19:33)   письмо автору
 
   для: kaya   (01.04.2010 в 19:16)
 

Как вывести таблицу в цикле вы знаете?

  Ответить  
 
 автор: kaya   (01.04.2010 в 19:54)   письмо автору
 
   для: sim5   (01.04.2010 в 19:33)
 

S pomoshyu while()?
Nu primerno...
Mne posovetovali ispolzovat funkciyu sozeof()?

  Ответить  
 
 автор: sim5   (01.04.2010 в 20:10)   письмо автору
 
   для: kaya   (01.04.2010 в 19:54)
 

Функция sizeof() это псевдоним для count(), что хотите из этого, то используйте.
Если вы знаете как вывести таблицу в цикле (не важно while, for, foreach), то достаточно вне этого цикла, сразу за открывающим тегом TABLE вывести ячейку (ячейки) куда и поместить число полученное sizeof() (count()). Все, что здесь такого сверхестественного?

  Ответить  
 
 автор: kaya   (06.04.2010 в 10:58)   письмо автору
 
   для: sim5   (01.04.2010 в 20:10)
 

Nichego netu sverxestestvennogo, ya prosto tolko uchus,i ne umeyu delat to chto vi govorite. V teorii vso ponyatno, no kogda delo kasaetsya praktiki, nichego ne poluchaetsya:(:(:(

  Ответить  
 
 автор: sim5   (06.04.2010 в 12:24)   письмо автору
 
   для: kaya   (06.04.2010 в 10:58)
 

Бедные женщины, надо с кастрюлями на кухне, а тут еще таблицы проклятые. )
Как таблицу выводить, вы уже знаете, по крайней мере ранее вы об этом сами говорили. Остается только вывести перед циклом ячейки таблицы, в которых вывести чило элементов массива. Например, ваш массив $temp будет такой:
<?
$temp 
= array('a'=>12,'b'=>22,'c'=>15);
//выводим вне цикла всего элементов
echo '<table><tr><td>All:</td><td>'.count($temp).'</td></tr>';
//в цикле выводим элементы
foreach($tempas $key=>$val) echo '<tr><td>'.$key.'</td><td>'.$val.'</td></tr>';
//закрываем таблицу
echo '</table>';

Хотя не понятно для чего этот промежуточный массив $temp, если таблицу можно сформировать при разборе ресурса, в цикле while, а до цикла вывести чило записей полученных запросом (в ресурсе).

  Ответить  
 
 автор: kaya   (06.04.2010 в 12:47)   письмо автору
 
   для: sim5   (06.04.2010 в 12:24)
 

Pro kostruli eto bil udar nije poyasa:| A voobshe , stolko skolko jenshina za den uspevaet sdelat,muzshinam i ne snilos.Naschyot tablic---rto moyo vtoroe obrazovanie, poprobovali bi vi viyuchitsya s 3 detmi i rabotaya pri etom na polnuu stavku, posmotrela bi ya na vas togda.......

To chto vi zdes obrisovali, ya uje probovala, ne rabotaet;):) I mne ne nujen promejutochnii massiv, on u menya zadayotsya v cikle while.Mne nujna tolko pomosh v konechnom punkte, kak vivesti dannie v tablicy.
V lubom sluchae spasibo za pomosh

  Ответить  
 
 автор: sim5   (06.04.2010 в 12:59)   письмо автору
 
   для: kaya   (06.04.2010 в 12:47)
 

Больно ударил? :) Это шутка )
Мне трудно непосредственно на вашем примере что-то показать, я не понимаю чего вы там делаете, почему и зачем этот массив промежуточный создаете, чего и зачем там сверяете, так как мне кажется, что все это лишнее,. но вдруг...
Прикрепите лучше кусочек содержимого таблицы вашей (несколько строк хватит, как сделать экспорт кусочка таблицы надеюсь знаете), скажите, что вы пытаетесь (что надо) из нее вывести в таблицу... вот тогда можно и на вашем примере что-то показать.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования