

Вычисление
#1
Отправлено 19 Июнь 2015 - 00:08
Есть таблицы "Договор", "Счет" и "Категория"
в таблице "Счет" есть поле-связь "Категория", которая ссылается, соответственно, на "Название категории" в таблице "Категория". Дальше. В таблице "Договор" есть доп. Действие "Добавить договор". В доп. действии выбирается категория. И нужно сделать проверку, чтобы в таблице "Счет" существовала запись, что именно этот клиент, с кем мы заключаем договор, имел счет по этой категории и поле "оплачено" было бы не 0.
В самом коде я пишу:
$tabN = get_table_id_by_name('Счета');
$c=data_select_field($tabN,'`f838` as kat',"`f839`='",$line['Клиент']['ФИО клиента'],"'");
Иначе говоря : SELECT `КАТЕГОРИЯ` AS KAT FROM СЧЕТА WHERE `НА КОГО`=$line['Клиент']['ФИО клиента'];
"НА КОГО" - поле, показывающее на кого был выписан счет.
$C1=C['KAT'];
и в c1 ничего нет.
как мне все таки достать данные?
#2
Отправлено 19 Июнь 2015 - 09:26
Во-вторых, в переменной $c поля будут под внутренними именами (f111), поэтому $C1=C['KAT']; выдаст пустоту, плюс вы забыли знак доллара перед C.
#3
Отправлено 19 Июнь 2015 - 15:46
echo "<script>k_answer_hide_form$qst_id=0; alert('".$c['f483']."')</script>";
так не работает. что мне в $с['????'] писать?
#4
Отправлено 19 Июнь 2015 - 17:42
$tabN = get_table_id_by_name('Счета'); $c = data_select_field($tabN, "`f838` as kat", "`f839`=",$line['Клиент']['ID']); $c1 = $c['kat'];
Не совсем правда понял, зачем вам в коде городить конструкцию $tabN = get_table_id_by_name('Счета'), проще и надежнее сразу подставить id таблицы Счета в data_select_field.
#5
Отправлено 21 Июнь 2015 - 11:55
вот код. вроде должен работать.
$c = data_select_field(43,"`f838` as kat");
var_dump($c);
$c1 = $c['kat'];
var_dump выдает следующее:
array(3) { ["result"]=> resource(151) of type (mysql result) ["db_type"]=> string(5) "mysql" ["table_name"]=> string(0) "" }
а при попытке вывести $c1 выводит пустоту все равно.Если что, поле 838 - связь.
спасибо
#6
Отправлено 22 Июнь 2015 - 09:23
$res = data_select_field(43,"`f838` as kat"); $c = sql_fetch_assoc($res); $c1 = $c['kat'];
#7
Отправлено 22 Июнь 2015 - 14:50
А что делать с полем "группа"?
я хочу выбрать записи по группе доступа Директор.
поле имеет номер f555
я пишу
$res = data_select(46, "`f555`='Директор'"); $cnt=0; while ($c= sql_fetch_assoc($res)) { $cnt=$cnt+1; echo "<script>k_answer_hide_form$qst_id=0; alert('".$c['f1410']."')</script>"; }
#8
Отправлено 22 Июнь 2015 - 14:52
#9
Отправлено 22 Июнь 2015 - 15:46
#10
Отправлено 22 Июнь 2015 - 16:05
хочется доделать уже, а многих вещей не знаю, недавно начал пользоваться)
я Вас уже достал, наверное, но скажите, пожалуйста еще такую вещь:
$res = data_select(46, "`f555`=1021 and status='0'"); $cnt=0; while ($c= sql_fetch_assoc($res)) { $cnt=$cnt+1; $org = data_select(50, "`f932`='".$c['f711']."' and status='0'"); $r = sql_fetch_assoc($org); while ($r= sql_fetch_assoc($res)) { echo "<script>k_answer_hide_form$qst_id=0; alert('".$c['f1420']."')</script>"; } echo "<script>k_answer_hide_form$qst_id=0; alert('".$c['f711']."')</script>"; }
вот код. там получается в каждом проходе цикла я достаю ID компании(f711) и хочу из таблицы Компании (50) взять название компании. и я внутри цикла делаю еще один подзапрос, где я выбираю данные из "Компании". но ничего опять не работает

#11
Отправлено 22 Июнь 2015 - 16:10
немного не так
но все равно не работает
$res = data_select(46, "`f555`=1021 and status='0'"); $cnt=0; while ($c= sql_fetch_assoc($res)) { $cnt=$cnt+1; $org = data_select(50, "`f932`='".$c['f711']."' and status='0'"); while ($r = sql_fetch_assoc($org)) { echo "<script>k_answer_hide_form$qst_id=0; alert('".$r['f1420']."')</script>"; } echo "<script>k_answer_hide_form$qst_id=0; alert('".$c['f711']."')</script>"; }
#12
Отправлено 22 Июнь 2015 - 16:40
#13
Отправлено 22 Июнь 2015 - 17:14
вот такая цепочка Сотрудники(где группа=директор)=>компания =>населенные пункты (наименование)
$res = data_select(46, "`f555`=1021 and status='0'"); $cnt=0; while ($c= sql_fetch_assoc($res)) { $cnt=$cnt+1; $org = data_select(50, "`id`=".$c['f711']); while ($r = sql_fetch_assoc($org)) { $town = data_select(471, "`id`=".$r['f14081']); while($t=sql_fetch_assoc($town)) { echo "<script>k_answer_hide_form$qst_id=0; alert('".$t['f11041']."')</script>"; } } }
все выводит правильно. иначе говоря, выводит города всех компаний к каким приписан директор.
теперь: есть в "населенных пунктах" поле "альтернативные названия". оно типа текст, но многострочное
$res = data_select(46, "`f555`=1021 and status='0'"); $cnt=0; while ($c= sql_fetch_assoc($res)) { $cnt=$cnt+1; $org = data_select(50, "`id`=".$c['f711']); while ($r = sql_fetch_assoc($org)) { $town = data_select(471, "`id`=".$r['f14081']); while($t=sql_fetch_assoc($town)) { echo "<script>k_answer_hide_form$qst_id=0; alert('".$t['f11051']."')</script>"; } } }
но теперь ничего не выводит. изменил только имя столбца
#14
Отправлено 22 Июнь 2015 - 17:16
#15
Отправлено 23 Июнь 2015 - 11:00
#16
Отправлено 23 Июнь 2015 - 23:36
теперь, есть таблица "клиенты", в ней есть поле "менеджер" типа "пользователь". я, с вашей помощью, нашел фамилию менеджера. как мне в это поле поставить того, кого я нашел?
$line['менеджер']=$person не работает.
#17
Отправлено 24 Июнь 2015 - 09:15
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных