inventory_logs가 존재하지 않으면 테이블 작성 ( id int (11) null auto_increment, Product_id int (11) NOL NULL, Action Varchar (255)는 Null, 수량 int (11) NULL, create_at timestamp null default current_timestamp, 기본 키 (ID) ) 엔진 = innodb 기본 charset = utf8;
이 테이블에는 다음 필드가 포함되어 있습니다.
ID : 자체 성장 기본 키를 사용하여 재고 로깅의 고유 식별자.
Product_id : 특정 제품을 연관시키는 데 사용되는 제품 ID.
조치 : 매장, 아웃 스토어 등과 같은 재고 작동 유형
수량 : 운영 수, 운영의 제품 수를 나타냅니다.
create_at : 생성 된 타임 스탬프를 기록합니다.
클래스 인벤토리 로그 { 개인 $ pdo; 공개 기능 __construct (pdo $ pdo) { $ this-> pdo = $ pdo; } Public Function AddLog ($ product_id, $ action, $ 수량) { $ sql = "Inventory_Logs에 삽입 (product_id, 동작, 수량) 값 (: product_id, : action, : quartity) "; $ stmt = $ this-> pdo-> 준비 ($ sql); $ stmt-> bindValue ( ': product_id', $ product_id, pdo :: param_int); $ stmt-> bindValue ( ': action', $ action, pdo :: param_str); $ stmt-> bindValue ( ': Quantity', $ Quantity, pdo :: param_int); $ stmt-> execute (); } 공개 기능 getLogs ($ product_id) { $ sql = "inventory_logs에서 select * uppubled_id = : create_at desc의 product_id order"; $ stmt = $ this-> pdo-> 준비 ($ sql); $ stmt-> bindValue ( ': product_id', $ product_id, pdo :: param_int); $ stmt-> execute (); return $ stmt-> fetchall (pdo :: fetch_assoc); } }
$ dbhost = 'localhost'; $ dbname = '재고'; $ dbuser = '루트'; $ dbpassword = '비밀번호'; $ dsn = "mysql : host = $ dbhost; dbname = $ dbname; charset = utf8"; $ pdo = new Pdo ($ dsn, $ dbuser, $ dbpassword); $ inventoryLog = new InventoryLog ($ pdo); // 인벤토리 로그 레코드 추가 $ inventoryLog-> addLog (1, 'Inventory', 10); // 제품의 인벤토리 로그를 가져옵니다 1 $ logs = $ inventoryLog-> getLogs (1); foreach ($ logs as $ log) { Echo "제품 ID :". $ log [ 'product_id']. "작동 유형 :". $ log [ 'action']. "운영 수 :". $ log [ '수량']. "<br> "; }