Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12

Работа с данными

11.04.2010, 14:12. Показов 1251. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Это мой код:

PHP
1
2
3
4
5
6
7
8
9
10
11
$countries = "SELECT ex_orders.orders_status,ex_orders.customers_country,
            countries.countries_name, ex_orders_status.orders_status_payed ";
$from = "FROM (ex_orders 
    INNER JOIN ex_orders_status 
      ON ex_orders.orders_status=ex_orders_status.orders_status_payed ) 
    INNER JOIN countries 
      ON ex_orders.customers_country=countries.countries_name ";
$where = "WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate).
    "' AND '".guion($todate).
    "'AND ex_orders.customers_country=countries.countries_name AND ".$nonepaid.
    "ex_orders.orders_status=ex_orders_status.orders_status_payed "
Это мой запрос в БД

Дальше должно идти условие типа такого: если птичка стоит то показать только данные для клиентов, которие заплатили
Если птички нет, то показать все данние.
Как это сделать, помогите пожалуйста,!!!!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.04.2010, 14:12
Ответы с готовыми решениями:

Работа с файлами(Запись,чтение,работа с данными)
Здравствуйте, никак не могу осилить файлы... Для начала вот само задание: В справочной автовокзала хранится расписание движения автобусов....

Работа с битами И Работа с символьными данными
1. Ввести 8 символов. В символе с наибольшим кодом заменить 5-й бит единицей, а в символе с наименьшим кодом 6-й бит - нулем. Вывести...

Работа с данными
Реализовать функцию char ToUpper(char) которая переводит символ латинского алфавита в верхний регистр(перевод осуществлять именно для...

13
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 14:44
Если под птичкой, понимается значение из checkbox в форме, то можно добавить условие типа такого:
PHP
1
2
3
4
5
6
7
8
...
if(isset($_POST['name_checkbox'])){
//Запрос к БД для тех, кто заплатил
}
else{
//Запрос для тех, кто не заплатил
}
...
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
11.04.2010, 15:35  [ТС]
PHP
1
2
3
4
5
6
if($_POST['nonepaid']){
    $where=$nonepaid.'ex_orders.orders_status=ex_orders_status.orders_status_payed ';
}else{
    $where="WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate)."' AND '".guion($todate)."'AND ex_orders.customers_country=countries.countries_name";
 
}
Вы имеете ввиду, так?
Ни работает
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 16:58
1)
Цитата Сообщение от Motechka Посмотреть сообщение
$where=$nonepaid
Цитата Сообщение от Motechka Посмотреть сообщение
$where="WHERE ex_orders.date_purchased
Тут ошибка или я просто не могу правильно понять Ваш код?
2)у меня работает такой код, скорее всего Вы что-то перепутали...Что-то стоит не на своем месте...давайте попробуем понять, что именно? У Вас так?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$countries = "SELECT ex_orders.orders_status,ex_orders.customers_country,
            countries.countries_name, ex_orders_status.orders_status_payed ";
$from = "FROM (ex_orders 
    INNER JOIN ex_orders_status 
      ON ex_orders.orders_status=ex_orders_status.orders_status_payed ) 
    INNER JOIN countries 
      ON ex_orders.customers_country=countries.countries_name ";
if($_POST['nonepaid']){
        $where=$nonepaid.'ex_orders.orders_status=ex_orders_status.orders_status_payed ';
}else{
        $where="WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate)."' AND '".guion($todate)."'AND ex_orders.customers_country=countries.countries_name";
 
}
$query=mysql_query($countries.$from.$where);
//Обработка результата
Я думаю, что у Вас ошибка именно в $where.
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
11.04.2010, 17:05  [ТС]
Да,я знаю,что ошибка в $where, но не могу её найти
Вот мой весь код:
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
if(isset($_POST['fromdate'])){
$fromdate = $_POST['fromdate'];
$todate=$_POST['todate'];
}else{
//  $fromdate='01/'.date('m/Y');
//  $todate=date('d/m/Y');
    echo "No results found";
    exit;
}
$countries = "SELECT ex_orders.orders_status,ex_orders.customers_country,countries.countries_name, ex_orders_status.orders_status_payed ";
$from = "FROM (ex_orders INNER JOIN ex_orders_status ON ex_orders.orders_status=ex_orders_status.orders_status_payed ) " .
        "INNER JOIN countries ON ex_orders.customers_country=countries.countries_name ";
$where = "WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate)."' AND '".guion($todate)."'AND ex_orders.customers_country=countries.countries_name AND ".$nonepaid."ex_orders.orders_status=ex_orders_status.orders_status_payed ";
 
if(isset($_POST['nonepaid'])){
 
    $where=$nonepaid."ex_orders.orders_status=ex_orders_status.orders_status_payed ";
}else{
    $where="WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate)."' AND '".guion($todate)."'AND ex_orders.customers_country=countries.countries_name AND ".$nonepaid."ex_orders.orders_status=ex_orders_status.orders_status_payed ";
 
}
$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;
            }
      }
 
arsort($temp);
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 17:35
1)удалите 14 строку;
2)в 18 строке $where="WHERE и дальше только ту часть условия, которое выведет тех, кто заплатил";
3)в 20 строке $where = "WHERE ex_orders.date_purchased BETWEEN '".guion($fromdate)."' AND '".guion($todate)."'AND ex_orders.customers_country=countries.co untries_name AND ".$nonepaid."ex_orders.orders_status=ex_ orders_status.orders_status_payed ";
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
11.04.2010, 17:45  [ТС]
Сейчас попробую

Добавлено через 4 минуты
СПАСИБО ВАМ ОГРОМНОЕ,ТОЛКО ЭТА ЗАРАЗА НЕ РАБОТАЕТ
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 17:58
Цитата Сообщение от Motechka Посмотреть сообщение
ТОЛКО ЭТА ЗАРАЗА НЕ РАБОТАЕТ
Ошибку какую-нибудь пишет?
в самый верх скрипта впишите
PHP
1
error_reporting(E_ALL);
и после коннекта к БД, выбора БД и запроса добавте
PHP
1
die(mysql_errno()   mysql_error());
Добавлено через 1 минуту
Цитата Сообщение от Motechka Посмотреть сообщение
Вот мой весь код:
Точно весь?
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
11.04.2010, 18:57  [ТС]
Знайте, когда я пишу код в sql, то проверка с птичкой работает, а с птичкой возвращает 0
А код действительно весьО_о
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 19:03
Цитата Сообщение от Motechka Посмотреть сообщение
Знайте, когда я пишу код в sql, то проверка с птичкой работает, а с птичкой возвращает 0
как понять?

Добавлено через 4 минуты
Цитата Сообщение от Motechka Посмотреть сообщение
А код действительно весь
А Вы подключиться не забыли?
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
11.04.2010, 19:44  [ТС]
Весь,мамом клянусь

Добавлено через 29 минут
Я поняла!!! Он не видит мой checkbox!!! А почему?
Вот ошибка:
PHP
1
2
3
4
5
6
7
8
9
10
11
Notice: Undefined offset: 2 in C:\xampp\htdocs\OTE\backoffice_admin\includes\functions\general.php  on line 1331
 
Notice: Undefined offset: 1 in C:\xampp\htdocs\OTE\backoffice_admin\includes\functions\general.php on line 1331
 
Notice: Undefined offset: 2 in C:\xampp\htdocs\OTE\backoffice_admin\includes\functions\general.php on line 1331
 
Notice: Undefined offset: 1 in C:\xampp\htdocs\OTE\backoffice_admin\includes\functions\general.php on line 1331
 
Notice: Undefined variable: nonepaid in C:\xampp\htdocs\OTE\backoffice_admin\includes\search_boxes\stats_countries_search.php on line 68
SELECT ex_orders.orders_status,ex_orders.customers_country,countries.countries_name, ex_orders_status.orders_status_payed FROM (ex_orders INNER JOIN ex_orders_status ON ex_orders.orders_status=ex_orders_status.orders_status_payed ) INNER JOIN countries ON ex_orders.customers_country=countries.countries_name WHERE ex_orders.date_purchased BETWEEN '--' AND '--'AND ex_orders.customers_country=countries.countries_name AND ex_orders.orders_status=ex_orders_status.orders_status_payed
Warning: arsort() expects parameter 1 to be array, null given in C:\xampp\htdocs\OTE\backoffice_admin\includes\search_boxes\stats_countries_search.php on line 87
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
11.04.2010, 23:27
А у checkbox точно name="nonepaid"?
arsort() служит для сортировки массивов.
Цитата Сообщение от Motechka Посмотреть сообщение
Notice: Undefined offset:
Это может быть из-за того, что Вы обратились к не существующему элементу массива.
0
0 / 0 / 0
Регистрация: 11.04.2010
Сообщений: 12
12.04.2010, 11:09  [ТС]
Да,имя checkboxa точно "notepaid"
Ясно, только как это исправить?
0
 Аватар для romchiksoad
1957 / 796 / 89
Регистрация: 03.11.2009
Сообщений: 3,066
Записей в блоге: 2
12.04.2010, 15:26
Цитата Сообщение от Motechka Посмотреть сообщение
Ясно, только как это исправить?
Как один из возможных вариантов, поменяйте параметр name в форме на nonepaid. В итоге должно получиться примерно так:
HTML5
1
<input type="checkbox" name="nonepaid">Показать только заплативших
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.04.2010, 15:26
Помогаю со студенческими работами здесь

Работа с данными
Приветствую, уважаемые форумчане. Прошу (хотя нет, молю) о помощи: выдали в аспирантуре курсовой не совсем по профилю, одно задание не могу...

Работа с данными
Пробую написать программу на фасме. Возникли вопросы, начну с первого: format PE console include 'FASM\include\win32ax.inc' ...

Работа с данными
Добрый день. Коллеги подскажите, не помню команду. не обходимо вывести данных из нескольких таблиц таким образом, чтобы выводилось...

Работа с данными
Помогите, пожалуйста выполнить задание Заранее спасибо!

Работа с данными из БД
Доброго времени суток. Суть такая - из ячейки БД выгружаются данные, которые программой применяются в качестве пути для открытия...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru