ugrás a tartalomhoz

Archívum - Okt 1, 2014

Egyik adatbázisból a másikba másolás bizonyos feltételek teljesülése esetén

kotapeter · 2014. Okt. 1. (Sze), 19.00
Sziasztok!

Egy webáruházat fejlesztek és azt szeretném megoldani, hogy az offline bolt raktárkészletét folyamatosan kövesse a webáruház raktárkészlete. Kb. 3000 termékről van szó.
Tehát ha eladnak valamit az offline boltban, akkor a webáruházban is csökkenjen annak a terméknek a darabszáma.

Ezt egyelőre egy cron-al oldottam meg. Linkelem a PHP kódot, ami minden egyes percben lefutott.

<?php
	$db = new MySQLi(offline üzlet adatbázisa);
	$db2 = new MySQLi(online üzlet adatbázisa);

	if ($db->connect_errno) {
    	exit();
	}
	
	$lekerdez = "select cikkszam,cikkszam_nev,db,kisker_ar,nyilv_ar,kategoria,db from cikkszam order by 1";
	$lekerdez2 = "select model,quantity from bio_product";

	$talalat = $db->query($lekerdez);
	$talalat2 = $db2->query($lekerdez2); 
	
	$n = $talalat->num_rows;
	$s = $talalat2->num_rows;

	for ($i=0; $i<$s; $i++) {

		$sor2 = $talalat2->fetch_assoc();
		$aktdb=0;
		for ($j=0; $j<$n; $j++) {
			$sor = $talalat->fetch_assoc();
			if (stripslashes($sor['cikkszam']) == stripslashes($sor2['model']) && stripslashes($sor['db']) != stripslashes($sor2['quantity'])) {
				$aktdb = $sor['db'];
				mysqli_query($db2,"UPDATE bio_product SET quantity=".$aktdb." WHERE model='".stripslashes($sor2['model'])."'");
				break;
			}
		}
		$talalat = $db->query($lekerdez);
	}
	$db->close();
?>
Nos, ezzel az egyszerű kóddal az a legnagyobb gond, hogy 3000 termék esetén csekély 4 óra alatt fut le.
Biztos vagyok benne, hogy van ennél sokkal jobb és elegánsabb megoldás.

Ha van ötletetek kérlek osszátok meg velem!

Köszönöm!

Peti
 

Felhasználó által beállítható automatizmusok

webproghu · 2014. Okt. 1. (Sze), 13.17
Sziasztok,

a következő problémába futottam bele:
adott egy adminisztrációs felület, ahol rendeléseket és termékeket lehet kezelni.
Jelenleg egy olyan funkció implementálásán dolgozom, amivel a rendszert használó felhasználó
egyedi automatizmusokat tud létrehozni, például ha egy termék státusza "készleten" helyett "nincs készleten"
lett, akkor a rendszer (azonnal, vagy pl. az esemény bekövetkezte után 3 nappal, tehát lehet késleltetni is) küldjön egy emailt az illetékes személynek,
vagy minden hétfőn reggel küldje ki a rendszer egy email címre a termékek listáját.

Az eseményhez/feltételhez kötődő műveletek elvégzése nem jelent gondot, viszont még nem találtam meg a megfelelő
módot, hogy hogyan vizsgáljam egy esemény (vagy időpont) bekövetkeztét, illetve hogyan kezeljem a késleltetéseket.

Van valakinek ötlete, hogy milyen formában lehetne tárolni a felhasználó által megadott feltételrendszert,
illetve hogyan lehetne azok bekövetkezését vizsgálni?

Előre is köszönök minden segítséget!