Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL][MySQL][PHP]Aktualizacja stanów magazynowych w aplikacji, Jak dokonać aktualizacji stanów z Subiekt GT do aplikacji
nikos
post
Post #1





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 30.03.2009

Ostrzeżenie: (0%)
-----


Witam!
W jakiś sposób najlepiej będzie aktualizować bazę danych produktów z programu Subiekt GT który ma bazę MS SQL do aplikacji która wykorzystuje MySQL.

W aplikacji jest tylko część produktów (ok 2800) mają one dodaną komórkę w tabeli subject_id gdzie znajduję się id produktu z bazy Subiekt.

Aplikacja nie przechowuje stanów magazynowych produktów posiada tylko włącznik i wyłącznik produktu (1,0)

W jaki sposób najlepiej zaplanować cały proces aktualizacji stanów magazynowych?

Wyłączenie produktu np gdy jego ilość jest < 2

Stany codziennie się zmieniają.

Czy np najpierw wypadałoby znać całą listę produktów z bazy danych aplikacji potem zapytać o ich stany i gdy są <2 wyłączyć je?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nikos
post
Post #2





Grupa: Zarejestrowani
Postów: 88
Pomógł: 0
Dołączył: 30.03.2009

Ostrzeżenie: (0%)
-----


Dzięki za informacje.
Wow skrypt super.

Okazuje się że mam też dostęp do bazy MySQL w której te stany się aktualizują za pomocą zewnętrznego programu.
Czyli tak na prawdę mój problem zawęża się do aktualizacji produktów które maja ten sam indeks.

W jednej bazie jest 7000tyś obiektów w drugiej tylko 2600
Czy zrobić to za pomocą csv ?

Chodzi o to że w drugiej nie ma ilości jest tylko włącz wyłącz.


xaitras Wykorzystałem Twój pomysł stworzyłem skrypt który między dwoma bazami MySQL aktualizuje stany magazynowe. Czy mogę prosić o sprawdzenie czy może da się takowy skrypt usprawnić ponieważ jego wykonanie zajmuje dużo czasu ponad 300s i to w pierwszej części.
  1.  
  2. <?php
  3. header('Content-Type: text/html; charset=utf-8');
  4. ini_set( 'display_errors', 'On' );
  5. error_reporting( E_ALL );
  6. // serwer 1
  7. $servername1 = "localhost";
  8. $username1 = "root";
  9. $password1 = "";
  10. $dbname1 = "sklep";
  11. //serwer 2
  12. $servername2 = "localhost";
  13. $username2 = "root";
  14. $password2 = "";
  15. $dbname2 = "test";
  16.  
  17. $connect1 = mysqli_connect($servername1, $username1, $password1, $dbname1);
  18. $connect2 = mysqli_connect($servername2, $username2, $password2, $dbname2);
  19.  
  20.  
  21. $query1 = "SELECT * FROM `sklep_towary` WHERE STAN < 3";
  22. $query2 = "SELECT * FROM `sklep_towary` WHERE STAN > 2";
  23.  
  24.  
  25. $result1 = mysqli_query($connect1, $query1);
  26. $result2 = mysqli_query($connect1, $query2);
  27.  
  28. IF(mysqli_num_rows($result1) > 0){
  29. while($row = mysqli_fetch_assoc($result1))
  30. { $indeks = $row['INDEKS'];
  31. $stan = $row['STAN'];
  32. $zapytanie = "UPDATE dimensions_available_phones SET avaiblable = 0 WHERE subiekt_id ='$indeks' " OR die(mysql_error());
  33. $wynik = mysqli_query($connect2, $zapytanie);
  34.  
  35. }
  36. IF(mysqli_num_rows($result2)>0){
  37. while($row = mysqli_fetch_assoc($result2)){
  38. $indeks = $row['INDEKS'];
  39. $stan = $row['STAN'];
  40. $zapytanie2 = "UPDATE dimensions_available_phones SET avaiblable = 1 WHERE subiekt_id ='$indeks' " OR die(mysql_error());
  41. $wynik2 = mysqli_query($connect2, $zapytanie2);
  42. }
  43.  
  44. }
  45. IF($wynik){
  46. echo 'Wyłączono';
  47. }
  48. IF($wynik2){
  49. echo 'Włączono';
  50. }
  51. }
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. ?>
  59.  


Ten post edytował nikos 19.07.2017, 08:55:54
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 10:03