PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 8
anton1488 Отправлено: 14 Ноября, 2014 - 12:29:58 • Тема: Помогите разобраться в странной работе кода • Форум: Вопросы новичков

Ответов: 7
Просмотров: 287
ничего не произошло... все так и осталось.
anton1488 Отправлено: 13 Ноября, 2014 - 17:03:21 • Тема: Помогите разобраться в странной работе кода • Форум: Вопросы новичков

Ответов: 7
Просмотров: 287
Такая тема.

Есть база, в ней есть некий инструмент, для добавления наших оплат поставщикам. Таблица в MySQL вида
CODE (SQL):
скопировать код в буфер обмена
  1. CREATE TABLE IF NOT EXISTS `oplata_to` (
  2.   `oplata_id` int(11) NOT NULL AUTO_INCREMENT,
  3.   `zayvka_id` int(11) NOT NULL DEFAULT '0',
  4.   `opl_date` date DEFAULT NULL,
  5.   `summa` decimal(11,2) NOT NULL DEFAULT '0.00',
  6.   `summa_rur` decimal(11,2) DEFAULT NULL,
  7.   `money_type` char(3) DEFAULT NULL,
  8.   `kurs` float DEFAULT NULL,
  9.   `kurs_pr` float NOT NULL DEFAULT '0',
  10.   `commets` text,
  11.   `avtor_id` int(11) DEFAULT NULL,
  12.   `slot` int(11) DEFAULT NULL,
  13.   PRIMARY KEY (`oplata_id`),
  14.   KEY `opl_date` (`opl_date`),
  15.   KEY `zayvka_id` (`zayvka_id`),
  16.   KEY `avtor_id` (`avtor_id`)
  17. ) ENGINE=InnoDB  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=3922 ;


Есть код, который записывает в эту таблицу сумму, автора, айди заявки по которой происходит оплата, порядковый номер оплаты в отдельно взятой заявке, создает айди самой оплаты. Выглядит примерно так:

PHP:
скопировать код в буфер обмена
  1. <TD align=middle><INPUT <?= $pay_edit_lock?> class=texts size=4 maxLength=10 value="<? $kbname="oplto_tour_kurs_base".$oplat_num; echo $$kbname; ?>" name=oplto_tour_kurs_base<?=$oplat_num?> onchange="kurs_recalc(z.oplto1_kurs<?=$oplat_num?>,z.oplto1_kurs_pr<?=$oplat_num?>,z.oplto_tour_kurs_base<?=$oplat_num?>);payment_to_rur_val(oplto1_tourist<?=$oplat_num?>, oplto1_kurs<?=$oplat_num?>,oplto1_sum<?=$oplat_num?>,oplto1_curr<?=$oplat_num?>)">
  2.                             +<INPUT <?= $pay_edit_lock?> class=texts maxLength=30 onchange="kurs_recalc(z.oplto1_kurs<?=$oplat_num?>,z.oplto1_kurs_pr<?=$oplat_num?>,z.oplto_tour_kurs_base<?=$oplat_num?>);payment_to_rur_val(oplto1_tourist<?=$oplat_num?>, oplto1_kurs<?=$oplat_num?>,oplto1_sum<?=$oplat_num?>,oplto1_curr<?=$oplat_num?>);" size=4 name=oplto1_kurs_pr<?=$oplat_num?> value="<?=$RowOP['kurs_pr']?>">% =
  3.                             <INPUT <?= $pay_edit_lock?> class=texts maxLength=30 onchange="kurs_recalc(z.oplto1_kurs<?=$oplat_num?>,z.oplto1_kurs_pr<?=$oplat_num?>,z.oplto_tour_kurs_base<?=$oplat_num?>);payment_to_rur_val(oplto1_tourist<?=$oplat_num?>, oplto1_kurs<?=$oplat_num?>,oplto1_sum<?=$oplat_num?>,oplto1_curr<?=$oplat_num?>)" size=4 name=oplto1_kurs<?=$oplat_num?> value="<?=$RowOP['kurs']?>">
  4.  
  5.                             </TD>
  6.                             <TD align=middle><INPUT <?= $pay_edit_lock?> class=texts maxLength=30
  7.                               onchange="payment_to_rur_val(oplto1_tourist<?=$oplat_num?>, oplto1_kurs<?=$oplat_num?>,oplto1_sum<?=$oplat_num?>,oplto1_curr<?=$oplat_num?>)"
  8.                               size=8 name=oplto1_tourist<?=$oplat_num?> value="<?=$RowOP['summa']?>"></TD>
  9.                             <TD align=middle<? $name="oplto1_sum".$oplat_num; if($oplata_not_filled[$name]!="") echo " bgcolor=\"Red\""; ?>><INPUT <?= $pay_edit_lock?> class=texts maxLength=30
  10.                               size=8 name=oplto1_sum<?=$oplat_num?> value="<?=$RowOP['summa_rur']?>" <?=!$show_link && !$pay_edit_lock?"id='oplto1_last_rur'":""?>></TD>
  11.                             </TD>
  12.                             <TD align="left" class="text"><INPUT <?= $pay_edit_lock?> class=texts maxLength=255
  13.                               size=70
  14.                               name=oplto1_info<?=$oplat_num?> value="<?=$RowOP['commets']?>">
  15.                             <INPUT <?= $pay_edit_lock?>  type=hidden value="<? if($RowOP['avtor_id']=="") echo $USER_ID ; else echo $RowOP['avtor_id']; ?>" name=oplto1_avtor_id<?=$oplat_num?>>
  16.                             <?
  17.                                           $r_opl_user = mysql_query("SELECT * FROM {$_SESSION["picked_legal"]}.`users` where id='".$RowOP['avtor_id']."'");
  18.                                                                                   if($RowOP['avtor_id']=="")  $r_opl_user = mysql_query("SELECT * FROM {$_SESSION["picked_legal"]}.`users` where id='".$USER_ID."'");
  19.                                           $RowOP_USER = @mysql_fetch_assoc($r_opl_user);
  20.                                           if($RowOP_USER['fio']!="") echo $mod_not_saved."Обр.: ".$RowOP_USER['fio'].$mod_not_saved2;
  21.                             ?>
  22.                             <INPUT <?= $pay_edit_lock?> type=hidden value="<?=$RowOP['slot']?>" name=oplto1_slot<?=$oplat_num?>>
  23.                             </TD>


Фишка в том, что все работает вроде, но! Первая оплата добавляется абсолютно всегда! Вторая на 99% тоже, по крайней мере я не помню, чтоб были косяки. а вот третья - уже проблемы. НО! Самое смешное, что иногда третья добавляется без проблем, а вот четвертая - не в какую. тупо не создается запись в базе. А сегодня вообще прикол - не добавляется тринадцатая строка! т.е. 12 были добавлены успешно, а вот 13 - нет.

В чем прикол - не могу понять.
anton1488 Отправлено: 02 Сентября, 2014 - 12:55:31 • Тема: Заблудился в 10 строчках кода) • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 685
Ребят. есть код:
CODE (javascript):
скопировать код в буфер обмена
  1. <script type="text/javascript">
  2. $(document).ready(function (){
  3.     $('input:checkbox').click(function (){
  4.         var ok=this.checked;
  5.         //this.checked=!ok;
  6.         $(this).next().find('input:checkbox').each(function (){
  7.             this.checked=ok;
  8.         });
  9.         if (ok) {
  10.             $(this).parents('li').children('input:checkbox').each(function (){
  11.                 this.checked=true;
  12.             });
  13.         } else {
  14.             $(this).parent().parents('li').each(function (){
  15.                 if ($(this).find('input:checked').length>1) return false;
  16.                 $(this).children('input:checkbox').get(0).checked=false;
  17.             });
  18.         };
  19.     });
  20. });
  21. </script>

При выборе родителя выбираются все чилдрены. но и при выборе чилдрена ставится галка на родителе. и фильтр работает по родителю.

Как правильно будет написать: родитель чекается - все чилдрены с ним, чилдрен - только он и все.
anton1488 Отправлено: 18 Августа, 2014 - 10:24:45 • Тема: Групповое изменение ячеек БД • Форум: Администрирование БД

Ответов: 3
Просмотров: 1580
Panoptik пишет:
не понятно до конца что нужно переименовать?
CODE (SQL):
скопировать код в буфер обмена
  1. UPDATE tbl SET ID = ID + 123 ORDER BY ID DESC


Переименовать нужно ID.
Есть ID в двух бахах:

1
2
3
...
2005

Нужно сделать:
10011
10012
10013
...
10012005
anton1488 Отправлено: 18 Августа, 2014 - 09:45:38 • Тема: Групповое изменение ячеек БД • Форум: Администрирование БД

Ответов: 3
Просмотров: 1580
Ребят, есть затык: есть поле ID в двух разных БД. нужно объединить. соответственно, ID должен быть уникальным, а в обеих базах - это 1+ и до бесконечности.

Как переименовать, добавив префикс, к примеру 100(1+), а в другой 200(1+)?
anton1488 Отправлено: 21 Июля, 2014 - 14:30:09 • Тема: SQL запрос • Форум: Напишите за меня, пожалуйста

Ответов: 2
Просмотров: 30
Всем привет.

Есть поле в таблице БД - 'status' имеет три значения, одно из которых 'n'
Есть поле в той же таблице - 'date' . тип одноименный)

нужно найти все значения N в поле STATUS, которые так же будут иметь значение в поле DATE ДО определенной даты. и поменять значение в поле STATUS на Y

че та затупил с запросом(
anton1488 Отправлено: 08 Июля, 2014 - 16:56:14 • Тема: Помогите составить запрос • Форум: Вопросы новичков

Ответов: 2
Просмотров: 109
PHP:
скопировать код в буфер обмена
  1. $cart->write($row,$col,$RowT['[b]name[/b]'],$MainFormat);
  2. $cols_size[$col]=max(strlen($RowT['name']),$cols_size[$col]);
  3. $col++;

супер! спасибо. одна опечатка у вас была, а так все ок)
anton1488 Отправлено: 08 Июля, 2014 - 16:11:56 • Тема: Помогите составить запрос • Форум: Вопросы новичков

Ответов: 2
Просмотров: 109
Ребят, не могу простейший запрос составить)
Вот код:
PHP:
скопировать код в буфер обмена
  1. $r_t=mysql_query("SELECT office_id FROM `users` where id='".$Row['avtor_id']."'");
  2.                         $RowT=mysql_fetch_assoc($r_t);
  3.                         $cart->write($row,$col,$RowT['office_id'],$MainFormat);
  4.                         $cols_size[$col]=max(strlen($RowT['office_id']),$cols_size[$col]);
  5.                         $col++;


Соответсвенно, код берет id офиса в котором работает автор заявки.
id выводится в Excel - все хорошо.

Но нужно выводить не id, а название офиса из таблицы `offices`где есть собственно поля id и name.

Нужно вывести name.

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB