TecDocデヌタベヌスず自動車郚品オンラむンストアずの統合

蚘事を曞くこずは、かなり興味深いプロゞェクトで䜜業した結果であり、その結果は、アむテムをTecDocパヌツカタログにリンクできる可胜性があるオンラむンストアになるはずです。

TecDoc補品は、特定のカタログパヌツ番号を持぀スペアパヌツメヌカヌの接続だけでなく、商品の画像、掚奚䟡栌、そしお最も重芁なこずにはアナログを怜玢する機胜を含む䞀皮のデヌタベヌスです。





サむトをTecDocカタログにリンクするには、そのデヌタベヌスをMySQLにアップロヌドする必芁がありたした。 World Wide Webの広倧さにおいお、この情報は問題なく芋぀けるこずができるため、これに぀いおは觊れたせん。



このオンラむンストアでは、自動車のスペアパヌツを販売しおいたす。



オンラむンストアの基盀はCMS "HostCMS"です。 顧客はこのCMSのラむセンスを持っおいるので、いわば、䜕をするかで働かなければなりたせんでした。 すぐに䜿甚できたすが、この補品はその機胜にも満足できたす。



オンラむンストアの䞻な改良点は、商品をカタログにバむンドできるこずです。TecDocデヌタベヌスは、孊名を* .xls圢匏の䟡栌衚から、たたは手動で-サむトコントロヌルパネルからダりンロヌドできるこずを考慮しおいたす。



ナヌザヌがストアで商品を芋぀けるためのツヌルがありたす。





次に、各問題の解決方法の詳现に぀いお説明したす。



商品の茞入。



最初のタスクは、生成された䟡栌衚から新しいアむテムをダりンロヌドするこずでした。

䟡栌衚は* .xls圢匏であり、このCMSでこの圢匏を操䜜するための既補のツヌルがないため、 「PHPExcel」を䜿甚するこずにしたした。

「PHPExcel」は、ファむルからデヌタを読み取るだけでなく、ファむルを生成できる䟿利なツヌルです。



すべおを矎しく芋せるために、サむトコントロヌルパネルでモゞュヌルを䜜成し、むンストヌルされおいるモゞュヌルのリストにそのモゞュヌルぞのリンクを衚瀺したした。

リンクをクリックするず、管理者はファむルをダりンロヌドするためのフォヌムを衚瀺したす。 この郚分をプログラマヌ偎から芋るず、すべおが暙準です。぀たり、フォヌムが䜜成され、ファむルが受信され、名前が倉曎され、目的のディレクトリに転送されたす。 ファむルタむプ、「XSS」に察する保護など、あらゆる皮類のチェックを远加するこずをお勧めしたす。



フォヌムで、管理者はサヌバヌに正垞にアップロヌドされるファむルを遞択したす。

そのため、ファむルはサヌバヌにアップロヌドされたす。 珟圚、2぀のオプションがありたす。

1.凊理のためにファむル党䜓を実行したす。 適切なオプションですが、数䞇件のレコヌドがある堎合、むンポヌトプロセスは制埡されたせん。

2. 2番目のオプション、それを䜿甚したした。

2.1ファむルをダりンロヌドした埌、塗り぀ぶされた行の数が決定されたす。

2.2凊理のために行番号を送信するスクリプトが生成されたす

2.2.1むンポヌトプロセスはパヌセンテヌゞで衚瀺されたす

2.2.2。むンポヌトの結果は、むンポヌト䞭に䞋向きに成長するテヌブルの圢匏で衚瀺されたす。

2.3結果の衚から、管理者は各補品の結果ず可胜なアクションを確認できたす。

具䜓的には、䟡栌衚の補品の䟋を瀺したす。







スクリプトが凊理する行番号を送信するず、各補品のプロパティの配列を受け取りたす。 ぀たり、䟡栌衚の各行は個別の補品に察応しおおり、この補品に぀いおは、䟡栌、数量、TecDocカタログの類䌌物などのプロパティを匕き出したす。

䟡栌衚フィヌルドを倉曎できるツヌルを䜜成する必芁がある堎合は、各列の最初の行に識別属性たずえば、「V.numb」、「Name.manufacturer」などを蚘述し、2行目がタむトルになりたす。列。 その結果、むンポヌトは3行目から開始する必芁がありたす。 むンポヌトする前に、識別属性に基づいお必芁なフィヌルドを決定する必芁がありたす。



次の手順では、内郚番号をストアのカタログ補品ずTecDocベヌスにリンクしたす。

1.内郚番号でカタログを怜玢する

2.補品が芋぀かった堎合、補品の特性䟡栌や数量などを曎新したす

3.補品がストアで芋぀からない堎合は、「TecDoc」で怜玢したす

3.1䞎えられた元の番号ずそれに察応する類䌌物に察しお1぀の補品が芋぀かった堎合、「新しい補品の远加」に進みたす。

3.2耇数の補品が芋぀かった堎合、「補品のいずれかを遞択」ぞのリンクを衚瀺したす

3.3補品が芋぀からない堎合は、「任意の補品を遞択」ぞのリンクを提䟛したす

3.4耇数の補品がある堎合、たたは補品が芋぀からない堎合、アナログレコヌドに倉曎を加えたす同じフィヌルドに蚘号「/」で区切られた耇数の数字がある堎合、䞍芁な文字を削陀するか、配列に分割したす。新しい補品を远加»

4.「新しい補品の远加」-䟡栌リストのフィヌルドに基づいおカタログに新しい補品が䜜成され、補品の欠萜しおいるプロパティはデフォルト倀を受け取りたす。 ゚ントリ「远加」が結果のテヌブルに衚瀺されたす

5.「補品の1぀を遞択」-ダむアログボックスはスクリプトの結果です。 「TecDoc」でいく぀かのアむテムが芋぀かった補品の反察偎をクリックするず、スクリプトがアクティブになりたす。 芋぀かったTecDocの䜍眮番号を受け入れ、必芁な番号を遞択できたす。







6.「補品を遞択」-ダむアログボックスはスクリプトの結果です。 このスクリプトは、「TecDoc」でアむテムが芋぀からなかった補品の反察偎をクリックするこずでアクティブになり、すべおのメヌカヌから目的のパヌツを遞択できたす。











モゞュヌルの倖芳









むンポヌトプロセス











MySQL



すべおのク゚リは、むンタヌネット䞊の怜玢を䜿甚しお芋぀けるこずができたす。

䞎えられたク゚リは、特定のタスクの特殊化ず最適化のために倉曎されたした。 しかし、次のタスクを芋るず倚くのこずが理解できたす。



タスク1.画像アドレスを怜玢する

SELECT CONCAT(GRA_TAB_NR, '/',GRA_GRD_ID, '.', IF(LOWER(DOC_EXTENSION)='jp2', 'jpg', LOWER(DOC_EXTENSION))) AS PATH FROM LINK_GRA_ART INNER JOIN GRAPHICS ON GRA_ID = LGA_GRA_ID INNER JOIN DOC_TYPES ON DOC_TYPE = GRA_DOC_TYPE WHERE LGA_ART_ID = @ARTICLE AND (GRA_LNG_ID = 16 OR GRA_LNG_ID = 255) AND GRA_DOC_TYPE <> 2 ORDER BY GRA_GRD_ID
      
      







画像カタログにパスを远加し、存圚の確認、サむズ倉曎を行いたす-必芁に応じお、サむトに安党に衚瀺できたす。



タスク2.アナログの怜玢



 SELECT ARL_KIND, IF (ART_LOOKUP.ARL_KIND = 2, SUPPLIERS.SUP_BRAND, BRANDS.BRA_BRAND) AS BRAND, ARL_DISPLAY_NR FROM ART_LOOKUP LEFT JOIN BRANDS ON BRA_ID = ARL_BRA_ID INNER JOIN ARTICLES ON ARTICLES.ART_ID = ART_LOOKUP.ARL_ART_ID INNER JOIN SUPPLIERS ON SUPPLIERS.SUP_ID = ARTICLES.ART_SUP_ID WHERE ARL_ART_ID = @ART_ID AND ARL_KIND IN (2, 3, 4) ORDER BY ARL_KIND, BRA_BRAND, ARL_DISPLAY_NR LIMIT 100
      
      





このリク゚ストは、商品の茞入時に䜿甚できたすが、この商品ずその類䌌品の適合性を確認するためにわずかに倉曎したす。



タスク3.補品情報を衚瀺する



 SELECT ART_ARTICLE_NR, SUP_BRAND, DES_TEXTS.TEX_TEXT AS ART_COMPLETE_DES_TEXT, DES_TEXTS2.TEX_TEXT AS ART_DES_TEXT, DES_TEXTS3.TEX_TEXT AS ART_STATUS_TEXT FROM ARTICLES INNER JOIN DESIGNATIONS ON DESIGNATIONS.DES_ID = ART_COMPLETE_DES_ID AND DESIGNATIONS.DES_LNG_ID = @LNG_ID INNER JOIN DES_TEXTS ON DES_TEXTS.TEX_ID = DESIGNATIONS.DES_TEX_ID LEFT JOIN DESIGNATIONS AS DESIGNATIONS2 ON DESIGNATIONS2.DES_ID = ART_DES_ID AND DESIGNATIONS2.DES_LNG_ID = @LNG_ID LEFT JOIN DES_TEXTS AS DES_TEXTS2 ON DES_TEXTS2.TEX_ID = DESIGNATIONS2.DES_TEX_ID INNER JOIN SUPPLIERS ON SUP_ID = ART_SUP_ID INNER JOIN ART_COUNTRY_SPECIFICS ON ACS_ART_ID = ART_ID INNER JOIN DESIGNATIONS AS DESIGNATIONS3 ON DESIGNATIONS3.DES_ID = ACS_KV_STATUS_DES_ID AND DESIGNATIONS3.DES_LNG_ID = @LNG_ID INNER JOIN DES_TEXTS AS DES_TEXTS3 ON DES_TEXTS3.TEX_ID = DESIGNATIONS3.DES_TEX_ID WHERE ART_ID = @ART_ID;
      
      







@LNG_IDを忘れないでください。ロシア語の堎合、たずえば16に等しい倀をそこに入力したす。





補品を怜玢したす。



カタログ

最も簡単なオプションは、蚪問者がカタログに入るず、ペヌゞに分割されたすべおの補品のリストが衚瀺されるこずです。 ここでは、疑問は生じないず思いたす。 プログラマヌは、カタログ内のすべおの補品を衚瀺したす。



フィルタリング

フィルタずしお、カテゎリツリヌを䜜成し、蚪問者がそこをナビゲヌトできるようにするこずができたす。 䟋

-車

-ボディ

---ボディパヌツ/りィング/バッファヌ

---グレヌゞング/ミラヌ

---カバヌ/フヌド/ドア/可動屋根/折りたたみ屋根

---予備のヘッドラむト/アクセサリヌ

---照明システム/アラヌム

-゚ンゞン

---ガスケット

---最滑システム

---シリンダヌヘッド

---空気䟛絊システム

-排気システム

---取り付けの詳现

---尿玠泚入

---サむレンサヌアセンブリ

---觊媒

---ラムダプロヌブ



そしお今、フィルタヌを遞択するず、このカテゎリヌに関連付けられおいるカタログの郚分のみが衚瀺されたす。぀たり、「TecDoc」からの䜍眮ぞのバむンドにより、カテゎリヌによるフィルタヌが远加されたす。 フィルタヌを遞択するずきにカタログ内の補品のリストを曎新するには、Ajaxを䜿甚しお動的に行うこずも、ペヌゞを曎新するこずもできたす。

次は、カテゎリCars10001のサブカテゎリのツリヌを衚瀺するク゚リです。



 SELECT STR_ID, STR_ID_PARENT, TEX_TEXT AS STR_DES_TEXT, IF(EXISTS( SELECT * FROM SEARCH_TREE AS SEARCH_TREE2 WHERE SEARCH_TREE2.STR_ID_PARENT <=> SEARCH_TREE.STR_ID LIMIT 1 ), 1, 0) AS DESCENDANTS FROM SEARCH_TREE INNER JOIN DESIGNATIONS ON DES_ID = STR_DES_ID INNER JOIN DES_TEXTS ON TEX_ID = DES_TEX_ID WHERE STR_ID_PARENT <=> 10001 AND DES_LNG_ID = 16;
      
      









リク゚ストはカタログのすべおのペヌゞで文字通り実行されるため、結果をキャッシュに远加するこずをお勧めしたす。 䞀般的に、倧きな負荷ず遅延をもたらすボトルネックを調査する必芁がありたす。

このCMSのキャッシュモゞュヌルは非垞に䟿利です。 呚りを芋枡せば、おそらく、どのフレヌムワヌクでも、サむトで最も負荷の高い堎所をキャッシュできたす。



内線番号で怜玢

ここでは補品の蚘事を確認し、存圚する堎合はこの䜍眮のペヌゞを衚瀺するため、このセクションでは質問をしたせん。 ナヌザヌの蚘事番号を入力するずきに、このセクションを自動補完で補完できたす。



元の番号で怜玢

この問題を解決するには、すべおのものがあるようです。 商品の远加プロパティに远加された元の番号たたはそのアナログの番号を考慮しお、カタログのすべおの補品を簡単に衚瀺できたす。

しかし...

そのような芁求の速床はかなり遅いです。 MySQLサヌバヌのあらゆる皮類の最適化を䜿甚しおも、結果は期埅はずれです。



Sphinx 怜玢゚ンゞンはプロゞェクトで耇数回䜿甚されおおり、垞にこのテクノロゞヌはプロゞェクトの改善のみを蚱可しおいたした。 そしお今回、Sphinxを䜿甚したずき、私たちは驚きたした





プロゞェクトのニヌズに合わせお構成ファむルを調敎し、むンデックスを再䜜成したした。Sphinxがない堎合ず比范しお、怜玢速床が本圓に向䞊したした。



キヌワヌド怜玢

速床の問題は元の数倀にあったため、メむン怜玢もSphinxテクノロゞヌを䜿甚しお実行する必芁があるず刀断されたした。

さらに、このテクノロゞヌにより、以䞋を䜿甚できたす。





ちなみに、プロゞェクトの最初に「Your car」ツヌルが玹介されたした。

このツヌルを䜿甚するず、TecDocカタログ党䜓から車䞡の倉曎のみを遞択し、この車䞡のみに䜕らかの圢で関連するすべおの補品を衚瀺できたす。

このツヌルは、前のフィヌルドの遞択に応じお動的に曎新される䞀連のフィヌルドです。 たずえば、自動車の生産幎を遞択した埌、利甚可胜な自動車ブランドを遞択し、゚ンゞンのモデルずタむプを遞択したす。 圌の仕事の結果を以䞋に瀺したす。







その結果、この車の䞻芁な修正が衚瀺され、その䞭から必芁なものを遞択したす。 車を遞択するずカタログが開きたすが、あなたの車がフィルタヌになり、サむトはナヌザヌの車を蚘憶し、それらを切り替えお新しい車を遞択できるようにする必芁がありたす。



たずめるず



入堎のしきい倀が倧きいにもかかわらず、タスクは難しくはありたせんでした。 このモゞュヌルを䜜成するために、次のアプロヌチ、技術、ツヌルを怜蚎するこずをお勧めしたす。





そしお最も重芁なこずは、既補の゚ンゞンを䜿甚しなくおも、たずえばフレヌムワヌクを䜿甚しお開発された自䜜の自動車カタログやオンラむンストアで、同様の結果が埗られるこずです。



PS远加ずしお、プロゞェクトからいく぀かのスクリプトを玹介したす。これらは少なくずも決定的ではありたせんが、その本質を理解するこずができたす。

プロセスをリク゚ストに分割するスクリプトは、リストから远加するほか、むンポヌトプロセスに぀いお通知したす。

 < script> // knum1,knum2,knum3,knum4,knum5 -   // inum -   // pz,pr -  // lim -  // wh1, wh2 -    // count -  // art_id -   //name -    //num_fnd -   tecDoc var from = 3; var to = 3; var percent = 0; var chk = 0; var cond = ''; function get_list(fromf,tof) { $.post( "/admin/import_excel_new/get_list.php", { from: fromf, to: tof },outputt ); function outputt(data) { if(chk == 0) { from += 1; to += 1; percent = ( from / cond ) * 100; } else { from = cond; percent = ( from / cond ) * 100; } if ((to - cond) > 0) { to = cond; chk = 1; get_list(from,to); to = 0; }else if((to - cond) == 0) { chk = 1; get_list(from,to); to = 0; } document.getElementById("perc").innerHTML=percent.toFixed(2)+"%"; $("#progressbar").children(".ui-progressbar-value").css("width", percent+"%"); document.getElementById("tab_cont").innerHTML+=data; if(chk == 1) { $("#progressbar").css("display", "none"); $("#progresspercent").css("display", "none"); } if ( chk == 0) { get_list(from,to); //setTimeout(get_list, 100, from, to); } } } alert("   ,       !"); get_list(from,to); function createWindow(count,art_id,inum,knum1,knum2,name,knum3,knum4,knum5,wh1, wh2,pz,pr,num_fnd,lim) { $.post( "/admin/import_excel_new/get_tab.php", { id: art_id, num_fnd: num_fnd },outputt2 ); function outputt2(data) { document.getElementById("inum").innerHTML=inum; document.getElementById("cntnt").innerHTML=data; document.getElementById("btn").innerHTML="<input type=\"button\" name=\"add\" id=\"add_id\" style=\"float:right; margin-top:5px;\" value=\"\" onclick=\"insert_item(\'"+count+"\', \'"+inum+"\',\'"+knum1+"\',\'"+knum2+"\',\'"+name+"\', \'"+knum3+"\',\'"+knum4+"\',\'"+knum5+"\',\'"+wh1+"\', \'"+wh2+"\',\'"+pz+"\',\'"+pr+"\',\'"+num_fnd+"\', \'"+lim+"\')\" />"; } document.getElementById("open_block").style.display="block"; } function loadNum() { bnum = document.getElementById("brand_id").value; $.post( "/admin/import_excel_new/get_number.php", { num: bnum },outputt11 ); function outputt11(data) { document.getElementById("list_num").innerHTML=data; } } function insert_item(count,inum,knum1,knum2,name,knum3,knum4,knum5,wh1,wh2,pz, pr,num_fnd,lim) { if (document.getElementById("opt_id_1").checked === true) art_id=document.getElementById("art_list_id").value; else if (document.getElementById("opt_id_2").checked === true) art_id=document.getElementById("txtnum_id").value; if(document.getElementById("txtnum_id").value!="") { $.post( "/admin/import_excel_new/insert_item.php", { count: count, id: art_id, inum: inum, knum1: knum1, knum2: knum2, name: name, knum3: knum3, knum4: knum4, knum5: knum5, wh1: wh1, wh2: wh2, pz: pz, pr: pr, num_fnd: num_fnd, lim: lim },outputt3 ); function outputt3(data) { document.getElementById("id_"+inum).innerHTML="<span style=\'color:green;\'></span>"; document.getElementById("id_opt_"+inum).innerHTML="<a style=\"cursor:pointer; text-decoration:underline; color:#0090ff;\" onclick=\"createWindow(\'1\',\'"+data+"\', \'"+inum+"\',\'"+knum1+"\',\'"+knum2+"\',\'"+name+"\',\'"+knum3+"\',\'"+knum4+"\',\'"+knum5+"\', \'"+wh1+"\',\'"+wh2+"\',\'"+pz+"\',\'"+pr+"\',\'"+num_fnd+"\',\'"+lim+"\')\"></a>"; } } document.getElementById(\'open_block\').style.display=\'none\'; } </ script>
      
      





郚品番号ずメヌカヌ名に基づいお商品を远加する機胜

 < ?php // $DataBase -    // $knum1,$knum2,$knum3,$knum4,$knum5 -   // $inum -   // $pz,$pr -  // $user -   // $date -  // $lim -  // $wh1, $wh2 -    // $nameProizvoditel, $numberProizvod -  ,    function addToCatalogForNoTecdoc($DataBase,$knum1,$knum2,$knum3,$knum4, $knum5,$inum,$pr,$user,$date,$pz,$lim,$wh1,$wh2,$nameProizvoditel,$numberProizvod){ $symbols = array("`"," ", "~", "!", "@", "#", "$", "%", "^", "&", "*", "(", ")", "-", "_", "=", "+", "/", "\\", "|", "?", ":", ";", "\"", "'", "№", ",", "."); $numberProizvodVithSymbols = str_replace($symbols, '', $numberProizvod); $nameProizvoditelUpper=strtoupper($nameProizvoditel); $query = " SELECT DISTINCT IF (ART_LOOKUP.ARL_KIND IN (3, 4), BRANDS.BRA_BRAND, SUPPLIERS.SUP_BRAND) AS brand, ART_LOOKUP.ARL_SEARCH_NUMBER AS NUMBER, `ARL_ART_ID` AS item_id, `ARL_SEARCH_NUMBER` AS num_fnd, `DES_TEXTS`.`TEX_TEXT` AS item_txt FROM ART_LOOKUP LEFT JOIN BRANDS ON BRANDS.BRA_ID = ART_LOOKUP.ARL_BRA_ID INNER JOIN ARTICLES ON ARTICLES.ART_ID = ART_LOOKUP.ARL_ART_ID INNER JOIN SUPPLIERS ON SUPPLIERS.SUP_ID = ARTICLES.ART_SUP_ID INNER JOIN DESIGNATIONS ON DESIGNATIONS.DES_ID = ARTICLES.ART_COMPLETE_DES_ID INNER JOIN DES_TEXTS ON DES_TEXTS.TEX_ID = DESIGNATIONS.DES_TEX_ID WHERE ART_LOOKUP.ARL_SEARCH_NUMBER = '".$numberProizvodVithSymbols."' AND ART_LOOKUP.ARL_KIND IN (1, 2, 3, 4) AND DESIGNATIONS.DES_LNG_ID = 16 AND (BRANDS.BRA_BRAND='".$nameProizvoditelUpper."' OR SUPPLIERS.SUP_BRAND='".$nameProizvoditelUpper."') GROUP BY brand, NUMBER ;"; $result1 = $DataBase->query($query); $row1 = mysql_fetch_array($result1); echo '<div class="'.$inum.'" style="display: none;"><b>'; var_dump($query); echo '</b>'; echo '<pre>'; var_dump($row1); echo '</pre></div>'; $art_id=$row1["item_id"]; $txt = $row1['item_txt']; $brand = $row1['brand']; $rez=array(); if($row1){ $rez['status']=true; }else{ $rez['status']=false; } if($rez['status']){ // $DataBase->Insert('shop_items_catalog_table', array( 'shop_currency_id' => '4', 'shop_shops_id' => '3', 'shop_items_catalog_name' => $brand.': '.$txt, 'shop_items_catalog_marking' => $art_id, 'shop_vendorcode' => $knum1, 'shop_extension' => $inum, 'shop_items_catalog_price' => $pr, 'users_id' => $user, 'shop_items_catalog_date_time' => $date, 'shop_items_catalog_putoff_date' => $date, 'shop_items_catalog_weight'=>0 )); $last_id = mysql_insert_id(); // function addToMarking($DataBase,$marking_id, $vendor_id){ if(trim($vendor_id)!="" && $vendor_id!=" "){ $DataBase->Insert('marking', array('marking_id' => $marking_id, 'vendor_id' => $vendor_id)); } } addToMarking($DataBase,$art_id, $numberProizvod); addToMarking($DataBase,$art_id, $knum1); addToMarking($DataBase,$art_id, $knum2); addToMarking($DataBase,$art_id, $knum3); addToMarking($DataBase,$art_id, $knum4); addToMarking($DataBase,$art_id, $knum5); // function addToShop_warehouse_items_table($DataBase,$shop_warehouse_id, $shop_items_catalog_item_id, $shop_warehouse_items_count, $users_id){ if(trim($vendor_id)!="" && $vendor_id!=" "){ $DataBase->Insert('shop_warehouse_items_table', array( 'shop_warehouse_id' => $shop_warehouse_id, 'shop_items_catalog_item_id' => $shop_items_catalog_item_id, 'shop_warehouse_items_count' => $shop_warehouse_items_count, 'users_id' => $users_id )); } } $whResult=0; if(trim($wh1)!=""){ $whResult=$wh1; }else{ $whResult=0; } addToShop_warehouse_items_table($DataBase,4, $last_id, $whResult, $user); if(trim($wh2)!=""){ $whResult=$wh2; }else{ $whResult=0; } addToShop_warehouse_items_table($DataBase,3, $last_id, $whResult, $user); addToShop_warehouse_items_table($DataBase,5, $last_id, 0, $user); function addToShop_prices_to_item_table ($DataBase,$last_id, $prices, $p){ $DataBase->Insert('shop_prices_to_item_table', array('shop_items_catalog_item_id' => $last_id, 'shop_list_of_prices_id' => $prices, 'shop_prices_to_item_value' => $p)); } // addToShop_prices_to_item_table ($DataBase,$last_id, 4, $pz); addToShop_prices_to_item_table ($DataBase,$last_id, 5, $pr); // $DataBase->Insert('shop_properties_items_table', array('shop_items_catalog_item_id' => $last_id, 'shop_list_of_properties_id' => 155, 'shop_properties_items_value' => $lim)); $param = array(); $param['item_id'] = $last_id; $param['path'] = 'item_' . $last_id; $DataBase->Update('shop_items_catalog_table', array('shop_items_catalog_item_id' => $param['item_id'], 'shop_items_catalog_path' => $param['path'] ), " `shop_currency_id` = '4' and `shop_shops_id` = '3' and `shop_items_catalog_name` = '".$brand . ': ' . $txt."' and `shop_items_catalog_marking` = ".$art_id ." and `shop_vendorcode` = '".$knum1."' and `shop_extension` = '".$inum."' and `shop_items_catalog_price` = ".$pr." " ); // $img=getImgForARTid($DataBase,$art_id); if($img) { $DataBase->Insert('shop_properties_items_table', array('shop_items_catalog_item_id' => $last_id, 'shop_list_of_properties_id' => 164, 'shop_properties_items_value' => $img)); } $img=''; } $rez['str_item']=$art_id; $rez['str_num_find']=$row1["num_fnd"]; return $rez; } ?>
      
      









PS新しい蚘事を他の蚘事よりも早く受け取るか、単に新しい出版物を芋逃さないようにする-Facebook 、 VK 、 Twitter 、 LiveJournal 、 LinkedInで賌読する



PPSたもなく、Digitovビゞネススクヌルでコヌスが開始されたす。ゞュニアPHP開発者になりたいです。 今すぐコヌスを賌読するず、割匕䟡栌で賌入できたす。



準備された蚘事

SECL Group 、ミドルPHP開発者、Vladimir

SECLグルヌプ CEO、ニキヌタ



All Articles