本文整理汇总了PHP中sql::lastId方法的典型用法代码示例。如果您正苦于以下问题:PHP sql::lastId方法的具体用法?PHP sql::lastId怎么用?PHP sql::lastId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sql
的用法示例。
在下文中一共展示了sql::lastId方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setRecord
public function setRecord($data)
{
$data[blocktype] = $this->blocktype;
$operation[$data[operation_id]] = array('date' => $data[action_date], 'comment_id' => sqltable_model::getCommentId($data[comment]));
// если в поле для нового ввели номер сопроводиловки уже существующий в журнале
// то будем править его
$sql = "SELECT * FROM {$this->maintable} WHERE lanch_id='{$data[lanch_id]}'";
$res = sql::fetchOne($sql);
if (empty($res)) {
// гадство! тут нужен уникальный, а без коментариев будет получаться один
sql::insert('coments', array(array("comment" => multibyte::Json_encode($operation))));
$data[coment_id] = sql::lastId();
} else {
$coment = multibyte::Json_decode(sqltable_model::getComment($res[coment_id]));
$coment[$data[operation_id]] = $operation[$data[operation_id]];
// заменить старый по ключу
sql::insertUpdate('coments', array(array("id" => $res[coment_id], "comment" => multibyte::Json_encode($coment))));
$data[edit] = $res[id];
// если был такой его и правим
$data[coment_id] = $res[coment_id];
}
$data[lastoperation] = $data[operation_id];
parent::setRecord($data);
return true;
}
示例2: setRecord
public function setRecord($data)
{
extract($data);
if (empty($edit)) {
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_spr (nazv,edizm,spr_price,koeff,krost) VALUES ('{$nazv}','{$edizm}','{$spr_price}','{$koeff}','{$krost}')";
sql::query($sql);
$sprid = sql::lastId();
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_ost (spr_id,ost) VALUES ('{$sprid}','0')";
sql::query($sql);
} else {
$sql = "UPDATE {$this->db}sk_{$this->sklad}_spr SET nazv='{$nazv}', edizm='{$edizm}', spr_price='{$spr_price}', koeff='{$koeff}', krost='{$krost}' WHERE id='{$edit}'";
sql::query($sql);
}
return true;
//sql::affected();
}
示例3: upsert
/**
* Methode generique de save de tout module
*
* @param module Le nom du module a sauvegarder (table de destination)
* @param fields Liste de champs a sauvegarder ex: Array('nom','prenom',etc..);
* @param data Array contenant les donnés a sauvegarder ex: Array ('nom' => Jean, 'prenom'=>'Pierre')
* @return Array Renvoi un array contenant msg qui dit s'il y a eut ajout ou edition
* id representant l'id de l'enregistrement conserné
* query pour debug la chaine envoyé en mysql
*/
public function upsert($module, $fields, $data)
{
$nbr_fields = count($fields);
$data_string_array = array();
$fields_string = implode(',', $fields);
$data_string = "";
foreach ($fields as $field) {
if (isset($data[$field]) && !empty($data[$field])) {
$data_string_array[$field] = '"' . sql::escapeString($data[$field]) . '"';
} else {
$data_string_array[$field] = '""';
}
}
// SI id est set alors il s'agit d'un update
if (isset($data['id']) && $data['id'] != 0) {
foreach ($fields as $field) {
$data_string .= $field . '= ' . $data_string_array[$field] . ',';
}
$data_string = substr($data_string, 0, -1);
$query = 'UPDATE ' . $module . ' SET ' . $data_string . ' WHERE id=' . $data['id'];
sql::query($query);
$response['msg'] = 'EDITED';
$response['id'] = $data['id'];
$response['query'] = $query;
} else {
// ID not set alors nouvelle création
$data_string = implode(',', $data_string_array);
$query = 'INSERT INTO ' . $module . ' (' . $fields_string . ') VALUES (' . $data_string . ');';
sql::query($query);
$lastid = sql::lastId();
$response['msg'] = 'ADDED';
$response['id'] = $lastid;
$response['query'] = $query;
}
return $response;
}
示例4: getCommentId
/**
* Возвращает идентификатор коментария по тексту коментария
* @param string $comment
* @return int
*/
public static function getCommentId($comment)
{
$sql = "SELECT * FROM coments WHERE comment='{$comment}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO coments (comment) VALUES ('{$comment}')";
sql::query($sql);
return sql::lastId();
} else {
return $rs[id];
}
}
示例5: arc
public function arc()
{
// годовая архивация
// перенести движения
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh_arc\n (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n SELECT sk_{$this->sklad}_dvizh.type,sk_{$this->sklad}_dvizh.numd,sk_{$this->sklad}_dvizh.numdf,sk_{$this->sklad}_dvizh.docyr,sk_{$this->sklad}_dvizh.spr_id,sk_{$this->sklad}_dvizh.quant,sk_{$this->sklad}_dvizh.ddate,sk_{$this->sklad}_dvizh.post_id,sk_{$this->sklad}_dvizh.comment_id,sk_{$this->sklad}_dvizh.price\n FROM {$this->db}sk_{$this->sklad}_dvizh";
if (!sql::query($sql)) {
return false;
}
// очистить движения
$sql = "TRUNCATE TABLE {$this->db}sk_{$this->sklad}_dvizh";
if (!sql::query($sql)) {
return false;
}
$sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_spr";
$res = sql::fetchAll($sql);
foreach ($res as $rs) {
$id = $rs["id"];
// получить остатки
$sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_ost WHERE sk_{$this->sklad}_ost.spr_id='{$id}'";
$ost = mysql_fetch_array(mysql_query($sql));
$ost = $ost["ost"];
// создать архивное движение
// поставщик
$sql = "SELECT id FROM {$this->db}sk_{$this->sklad}_postav WHERE supply=''";
$rs1 = sql::fetchOne($sql);
if (!empty($rs1)) {
$post_id = $rs1["id"];
}
// коментарий
$sql = "SELECT id FROM {$this->db}coments WHERE comment='Передача остатка'";
$rs1 = sql::fetchOne($sql);
if (!empty($rs1)) {
$comment_id = $rs1["id"];
} else {
$sql = "INSERT INTO {$this->db}coments (comment) VALUES ('Передача остатка')";
sql::query($sql) or die(sql::error(true));
$comment_id = sql::lastId();
}
$numd = "9999";
$numdf = "9999";
$docyr = date("Y") - 1;
$ddate = date("Y-m-d", mktime(0, 0, 0, 12, 31, $docyr));
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh_arc (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n VALUES ('0','{$numd}','{$numdf}','{$docyr}','{$id}','{$ost}','{$ddate}','{$post_id}','{$comment_id}','0')";
echo $sql . "<br>";
if (!sql::query($sql)) {
return false;
}
// создадим первое движение года
// коментарий
$sql = "SELECT id FROM {$this->db}coments WHERE comment='Остаток на 31.12.{$docyr}'";
$rs1 = sql::fetchOne($sql);
if (!empty($rs1)) {
$comment_id = $rs1["id"];
} else {
$sql = "INSERT INTO {$this->db}coments (comment) VALUES ('Остаток на 31.12.{$docyr}')";
sql::query($sql) or die(sql::error(true));
$comment_id = sql::lastId();
}
$docyr = date("Y");
$ddate = date("Y-m-d", mktime(0, 0, 0, 1, 1, $docyr));
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n VALUES ('1','{$numd}','{$numdf}','{$docyr}','{$id}','{$ost}','{$ddate}','{$post_id}','{$comment_id}','0')";
if (!sql::query($sql)) {
return false;
}
}
return true;
}
示例6: wideandgap
/**
* Добавляет к блоку данные о проводниках и зазорах
*/
public function wideandgap($rec)
{
$rec = multibyte::cp1251_to_utf8($rec);
// TODO duble code
// update block size
extract($rec);
$sql = "SELECT id FROM customers WHERE customer='{$customer}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
sql::query($sql);
$customer_id = sql::lastId();
} else {
$customer_id = $rs[id];
}
$sql = "SELECT id,comment_id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$params = json_decode(multibyte::Unescape(sqltable_model::getComment($rs["comment_id"])), true);
//получим текщий комент
$params["wideandgaps"] = update_model::parsexstring($wideandgaps);
$comment_id = sqltable_model::getCommentId(multibyte::Json_encode(multibyte::recursiveEscape($params)));
$id = $rs["id"];
$sql = "UPDATE blocks SET comment_id='{$comment_id}' WHERE id='{$id}'";
sql::query($sql);
echo json_encode($params);
}
/* если не нашелся такой блок, то не понятно как вызывался метод, блок создается раньше вызовом coppers и другими
* wideandgaps вызывается для готовых блоков, не вижу смысла отрабатывать ситуацию когда блока нет
*/
}
示例7: createdironserver
$filename = createdironserver($file_link);
$fe = file_exists($filename);
if ($fe) {
$pos_in_order++;
}
} while ($fe);
// Определим идентификатор файловой ссылки
$sql = "SELECT id FROM filelinks WHERE file_link='{$file_link}'";
$rs = sql::fetchOne($sql);
if (!empty($rs[id])) {
$file_id = $rs["id"];
} else {
$sql = "INSERT INTO filelinks (file_link) VALUES ('{$file_link}')";
sql::query($sql);
sql::error(true);
$file_id = sql::lastId();
}
// добавить поля в
$sql = "UPDATE tz SET file_link_id='{$file_id}', pos_in_order='{$pos_in_order}' WHERE id='{$tzid}'";
sql::query($sql);
$excel = file_get_contents($typetz == "mpp" ? "tzmpp.xls" : ($typetz == "dpp" ? "tzdpp.xls" : "tzdppm.xls"));
if ($file = @fopen($filename, "w")) {
fwrite($file, $excel);
fclose($file);
chmod($filename, 0777);
if ($file = @fopen($filename . ".txt", "w")) {
fwrite($file, $cdate . "\n");
fwrite($file, $fullname . "\n");
fwrite($file, $order . "\n");
fwrite($file, $odate . "\n");
fwrite($file, sprintf("%08d\n", $tzid));
示例8: users
tz - идентификатор ТЗ
posintz - номер позиции в ТЗ
mpdate - дата запуска
user - кто добавил
Возвращает id добавленого МП
*/
include_once $_SERVER["DOCUMENT_ROOT"] . "/lib/engine.php";
// это нужно при добавлении так как не вызывается заголовк html
// Определим идентификатор пользователя
$sql = "SELECT id FROM users WHERE nik='{$user}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$user_id = $rs["id"];
} else {
$sql = "INSERT INTO users (nik) VALUES ('{$user}')";
sql::query($sql) or die(sql::error(true));
$user_id = sql::lastId();
}
// добавим МП если есть такое исправим
$sql = "SELECT * FROM masterplate WHERE tz_id='{$tz}' AND posintz='{$posintz}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO masterplate (tz_id,posintz,mpdate,user_id) VALUES ('{$tz}','{$posintz}','{$mpdate}','{$user_id}')";
sql::query($sql) or die(sql::error(true));
$mp_id = sql::lastId();
} else {
$sql = "UPDATE masterplate SET mpdate='{$mpdate}', user_id='{$user_id}' WHERE tz_id='{$tz}' AND posintz='{$posintz}'";
sql::query($sql) or die(sql::error(true));
$mp_id = $rs["id"];
}
printf("%08d", $mp_id);
示例9: getPartyfile
public function getPartyfile($rec)
{
extract($rec);
if ($dozap === true) {
$sql = "SELECT pos_in_tz_id AS posid\r\n FROM lanch\r\n WHERE lanch.id='{$posid}'";
//echo $sql;
$rs = sql::fetchOne($sql);
sql::error(true);
$rec[posid] = $posid = $rs[posid];
$rec[dozapnumbers] = $party;
// тут было записано сколько при дозапуске
$rec[party] = $party = -2;
} elseif ($dozap == "zadel") {
$rec[dozapnumbers] = $party;
$rec[party] = $party = -1;
}
// Получим идентификатор запуска, нового или уже сущечтвующего
// почти всегда, кажется, нового
// давай посмотрим варианты
// 1-запуск
// 2-дозапуск
// 3-использование задела
// при запуске могло использоваться, но теперь при удалении будет другое значение
// дозапуск не получится если не удален предыдущий запуск
// делаем всегда новое
/*
$sql = "SELECT * FROM lanch
WHERE pos_in_tz_id='{$posid}' AND part='{$party}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO lanch
(ldate, user_id,pos_in_tz_id)
VALUES (NOW(),'" . Auth::getInstance()->getUser('userid') . "','{$posid}')";
sql::query($sql);
$lanch_id = sql::lastId();
} else {
$lanch_id = $rs["id"];
}
*/
// Определим идентификатор коментария
$comment_id = 1;
//пустой
$file_link_id = 1;
//пустой! обяязательно указать для нормальной работы внешних ключей
$sql = "INSERT INTO lanch\r\n (ldate, user_id,pos_in_tz_id,comment_id,file_link_id)\r\n VALUES (NOW(),'" . Auth::getInstance()->getUser('userid') . "','{$posid}','{$comment_id}','{$file_link_id}')";
sql::query($sql);
$lanch_id = sql::lastId();
// вернем вызывальщику
if (!empty($lanch_id)) {
$rec[lanch_id] = $lanch_id;
// заказчик и имя блока
$sql = "SELECT *\r\n FROM posintz\r\n JOIN (blocks,customers)\r\n ON (blocks.id=posintz.block_id AND blocks.customer_id=customers.id)\r\n WHERE posintz.id='{$posid}'";
$rs = sql::fetchOne($sql);
$rec[customer] = $customer = $rs[customer];
$rec[blockname] = $blockname = $rs[blockname];
$rec[block_id] = $rs[block_id];
return $rec;
} else {
return false;
}
}
示例10: coments
$com = sql::fetchOne($sql);
if (empty($com)) {
$sql = "INSERT INTO coments (comment) VALUES ('{$comment}')";
sql::query($sql);
$comment_id = sql::lastId();
} else {
$comment_id = $com[id];
}
// добавим МП если есть такое исправим
$sql="SELECT * FROM posintz WHERE tz_id='$tznumber' AND posintz='$posintz'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql="INSERT INTO posintz (tz_id,posintz,plate_id,board_id,block_id,numbers,first,srok,priem,constr,template_check,template_make,eltest,numpl1,numpl2,numpl3,numpl4,numpl5,numpl6,numbl,pitz_mater,pitz_psimat,comment_id) VALUES ('$tznumber','$posintz','$plate_id','$board_id','$block_id','$numbers','$first','$srok','$priem','$constr','$template_check','$template_make','$eltest','$numpl1','$numpl2','$numpl3','$numpl4','$numpl5','$numpl6','$numbl','$textolite','$textolitepsi','{$comment_id}')";
sql::query ($sql);
$pit_id = sql::lastId();
} else {
$sql="UPDATE posintz SET numbers='$numbers', plate_id='$board_id',plate_id='$board_id', block_id='$block_id',first='$first',srok='$srok',priem='$priem',constr='$constr',template_check='$template_check',template_make='$template_make', eltest='$eltest', numpl1='$numpl1', numpl2='$numpl2', numpl3='$numpl3', numpl4='$numpl4', numpl5='$numpl5', numpl6='$numpl6', numbl='$numbl', pitz_mater='$textolite', pitz_psimat='$textolitepsi', comment_id='{$comment_id}' WHERE tz_id='$tznumber' AND posintz='$posintz'";
sql::query ($sql);
$pit_id = $rs["id"];
}
// обновить запуски если некоторые позиции уже запускались
$sql="SELECT * FROM lanch WHERE tz_id='$tznumber' AND pos_in_tz='$posintz'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql="UPDATE lanch SET pos_in_tz_id='$pit_id' WHERE id='".$rs["id"]."'";
sql::query ($sql);
$sql="UPDATE posintz SET ldate='".$rs["ldate"]."' WHERE id='$pit_id'";
sql::query ($sql);
}
示例11: cmsUTF_decode
${$key} = cmsUTF_decode($val);
// она сама и массивы перекодирует и проверяет на utf
}
foreach ($_POST as $key => $val) {
${$key} = cmsUTF_decode($val);
// она сама и массивы перекодирует и проверяет на utf
}
// заказчик по tzid
$sql = "SELECT orders.customer_id AS id FROM tz JOIN (orders) ON (tz.order_id=orders.id) WHERE tz.id='{$tznumber}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
echo -1;
exit;
}
$customer_id = $rs[id];
// добавление блока
$sql = "SELECT id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$blockname}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO blocks (id,customer_id,blockname,sizex,sizey,thickness) VALUES(NULL,'{$customer_id}','{$blockname}','{$bsizex}','{$bsizey}','{$thickness}')";
sql::query($sql) or die(sql::error(true));
$block_id = sql::lastId();
} else {
$block_id = $rs["id"];
$sql = "UPDATE blocks SET customer_id='{$customer_id}',blockname='{$blockname}',sizex='{$bsizex}',sizey='{$bsizey}',thickness='{$thickness}' WHERE id='{$block_id}'";
sql::query($sql) or die(sql::error(true));
}
// удалим позиции с блока потому что они будут добавляться из ТЗ
$sql = "DELETE FROM blockpos WHERE block_id='{$block_id}'";
sql::query($sql);
echo $block_id;
示例12: filelinks
if (!empty($rs)) {
$file_id = $rs["id"];
} else {
$sql = "INSERT INTO filelinks (file_link) VALUES ('{$file_link}')";
sql::query($sql) or die(sql::error(true));
$file_id = sql::lastId();
}
// пщлучим номер очередной позиции тз в заказе
$sql = "SELECT max(pos_in_order) as pio FROM tz WHERE order_id='{$order_id}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$pos_in_order = $rs[pio] + 1;
} else {
$pos_in_order = 1;
}
// добавим ТЗ если есть такое добавим вторую позицию - типа ДПП1 ДПП2 и т.д.
$sql = "SELECT * FROM tz WHERE file_link_id='{$file_id}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO tz (order_id,tz_date,user_id,pos_in_order,file_link_id) VALUES ('{$order_id}','{$tz_date}','{$user_id}','{$pos_in_order}','{$file_id}')";
sql::query($sql) or die(sql::error(true));
$tz_id = sql::lastId();
} else {
$sql = "DELETE FROM posintz WHERE tz_id='" . $rs["id"] . "'";
sql::query($sql) or die(sql::error(true));
$sql = "UPDATE tz SET order_id='{$order_id}', tz_date='{$tz_date}', user_id='{$user_id}' WHERE file_link_id='{$file_id}'";
sql::query($sql) or die(sql::error(true));
//$rs=mysql_fetch_array($res);
$tz_id = $rs["id"];
}
printf("%08d", $tz_id);
示例13: customers
$customer = '';
//Заказчик тут обозначаю потому что при вызове движка будут переписаны из $_GET, а warnings будет меньше
$board = '';
// Плата
$ndraw = $osob = $nstek = $dop = $nprokl = $tprokl = $dfrez = $mn1 = $mn2 = $mn3 = $mn4 = $mn5 = $mn6 = $mn7 = $mn8 = $m1 = $m2 = $m3 = $m4 = $m5 = $m6 = $m7 = $m8 = '';
// параметры из ТЗ, но они не заполняются никем и судя по всему этот скрипт уже не нужен
require $_SERVER["DOCUMENT_ROOT"] . "/lib/engine.php";
// заказчик
$sql = "SELECT id FROM customers WHERE customer='{$customer}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$customer_id = $rs["id"];
} else {
$sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
sql::query($sql) or die(sql::error(true));
$customer_id = sql::lastId();
}
// изменение платы
$sql = "SELECT id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
exit;
} else {
$block_id = $rs[id];
}
$sql = "SELECT id FROM mppdop WHERE block_id='{$block_id}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
$sql = "INSERT INTO mppdop (id,block_id,ndraw,osob,nstek,dop,nprokl,tprokl,dfrez,mn1,mn2,mn3,mn4,mn5,mn6,mn7,mn8,m1,m2,m3,m4,m5,m6,m7,m8) VALUES (NULL,'{$block_id}','{$ndraw}','{$osob}','{$nstek}','{$dop}','{$nprokl}','{$tprokl}','{$dfrez}','{$mn1}','{$mn2}','{$mn3}','{$mn4}','{$mn5}','{$mn6}','{$mn7}','{$mn8}','{$m1}','{$m2}','{$m3}','{$m4}','{$m5}','{$m6}','{$m7}','{$m8}')";
sql::query($sql) or die(sql::error(true));
} else {
示例14: setRecord
public function setRecord($data)
{
extract($data);
$spr_id = $_SESSION[Auth::$lss][tovarid];
/*
* Актуализация цены
*/
//if ($this->sklad == "mat_" ) { // только для материала
// 02-12-2014 для всех
if ($type == 1) {
// приход
if ($price != 0) {
// цена указана
//if ($comment != "***" ) {
// мне лучше не знать, но наверное цена не правильная
$sql = "UPDATE {$this->db}sk_{$this->sklad}_spr SET spr_price = '{$price}' WHERE id='{$spr_id}'";
sql::query($sql);
//}
}
}
//}
//console::getInstance()->out(print_r($data,true));
// отредактировано
// найдем поставщика
if (!empty($supply_id)) {
$post_id = $supply_id;
} else {
$sql = "SELECT id FROM {$this->db}sk_{$this->sklad}_postav WHERE supply='{$supply}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$post_id = $rs[id];
} else {
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_postav (supply) VALUES ('{$supply}')";
sql::query($sql);
if (sql::error(true) != null) {
return false;
}
$post_id = sql::lastId();
}
}
// Определим идентификатор коментария
$sql = "SELECT id FROM {$this->db}coments WHERE comment='{$comment}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
$comment_id = $rs["id"];
} else {
$sql = "INSERT INTO {$this->db}coments (comment) VALUES ('{$comment}')";
sql::query($sql);
sql::error();
$comment_id = sql::lastId();
}
list($numdf, $numyr) = explode("/", $numd);
if (empty($edit)) {
//добавление нового
$ddate = date("Y-m-d", mktime(0, 0, 0, substr($ddate, 3, 2), substr($ddate, 0, 2), substr($ddate, 6, 4)));
//$dyear."-".$dmonth."-".$dday;
$sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price) VALUES ('{$type}','{$numd}','{$numdf}','{$numyr}','{$spr_id}','{$quant}','{$ddate}','{$post_id}','{$comment_id}','{$price}')";
sql::query($sql);
sql::error(true);
$sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($type ? "+" : "-") . abs($quant) . " WHERE spr_id='{$spr_id}'";
sql::query($sql);
sql::error(true);
} else {
// удалить старое движенеи
$sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_dvizh WHERE id='{$edit}'";
$rs = sql::fetchOne($sql);
$sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($rs["type"] ? "-" : "+") . abs($rs["quant"]) . " WHERE spr_id='" . $rs["spr_id"] . "'";
sql::query($sql);
$ddate = date("Y-m-d", mktime(0, 0, 0, substr($ddate, 3, 2), substr($ddate, 0, 2), substr($ddate, 6, 4)));
//$dyear."-".$dmonth."-".$dday;
$sql = "UPDATE {$this->db}sk_{$this->sklad}_dvizh SET type='{$type}',numd='{$numd}',numdf='{$numdf}',docyr='{$numyr}',spr_id='" . $rs["spr_id"] . "',quant='{$quant}',ddate='{$ddate}',post_id='{$post_id}',comment_id='{$comment_id}',price='{$price}' WHERE id='{$edit}'";
sql::query($sql);
$sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($type ? "+" : "-") . abs($quant) . " WHERE spr_id='" . $rs["spr_id"] . "'";
sql::query($sql);
}
return true;
//sql::affected();
}
示例15: createTZ
public function createTZ($rec)
{
extract($rec);
// np не надо редактировать - только добавлять с текущей датой и пользователем
// определим позицию в письме
extract($_SESSION[Auth::$lss]);
//list($customer_id,$order_id,$tz_id,$posintzid) = explode(':',$idstr);
$orderid = $order_id;
$sql = "SELECT COUNT(*)+1 AS next FROM tz WHERE order_id='{$orderid}'";
$rs = sql::fetchOne($sql);
$pos_in_order = $rs[next];
// добавление
// создать файл с табличкой
// определим заказчика
$sql = "SELECT number,orderdate,customer, fullname\n FROM orders\n JOIN customers\n ON customers.id=customer_id\n WHERE orders.id='{$orderid}'";
//echo $sql;
$rs = sql::fetchOne($sql);
$order = $rs["number"];
$customer = $rs["customer"];
$fullname = $rs["fullname"];
$odate = $rs["orderdate"];
$cdate = date("m-d-Y");
$sql = "INSERT INTO tz (order_id,tz_date,user_id) VALUES ('{$orderid}',NOW(),'" . Auth::getInstance()->getUser('id') . "')";
sql::query($sql);
$tzid = sql::lastId();
do {
$filetype = $typetz == "mpp" ? "МПП" : ($typetz == "dpp" ? "ДПП" : ($typetz == "mppb" ? "МПП-Блок" : "ДПП-Блок"));
$orderstring = fileserver::removeOSsimbols($rs["number"]);
$file_link = "t:\\\\Расчет стоимости плат\\\\ТехЗад\\\\{$customer}\\\\{$tzid}-{$filetype}-{$pos_in_order}-{$orderstring} от {$rs["orderdate"]}.xls";
$filename = fileserver::createdironserver($file_link);
$fe = file_exists($filename);
if ($fe) {
$pos_in_order++;
}
} while ($fe);
// Определим идентификатор файловой ссылки
$file_id = $this->getFileId($file_link);
// добавить поля в
$sql = "UPDATE tz SET file_link_id='{$file_id}', pos_in_order='{$pos_in_order}' WHERE id='{$tzid}'";
sql::query($sql);
$rec = array('id' => $tzid, 'tzlink' => $file_link, 'success' => true);
$tzid = sprintf("%08s", $tzid);
// для отображения в заказе
$rec = array_merge($rec, compact('cdate', 'filename', 'order', 'odate', 'typetz', 'fullname', 'tzid'));
return $rec;
}