setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "--- ๐Ÿ›  ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ ์ ๊ฒ€ ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ค‘... ---\n"; // 1. ์žฌ๊ณ (STOCK) ์ƒํƒœ์ธ ์ž์‚ฐ์˜ ๋ฐฐ์ •์‚ฌ์šฉ์ž๋ฅผ '์—…๋ฌด์šฉ(TEMP_44666b)'์œผ๋กœ ํ†ตํ•ฉ // ๊ธฐ์กด์— ๋น„์–ด์žˆ๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ด๋ฆ„์ด์—ˆ๋˜ ๊ฒฝ์šฐ ์—…๋ฐ์ดํŠธ $stmt1 = $db->prepare("UPDATE laptop_assets SET assigned_user_name = '์—…๋ฌด์šฉ(TEMP_44666b)', current_user_id = NULL WHERE status = 'stock' AND (assigned_user_name != '์—…๋ฌด์šฉ(TEMP_44666b)' OR assigned_user_name IS NULL)"); $stmt1->execute(); echo "โœ… ์žฌ๊ณ (STOCK) ์ž์‚ฐ์˜ ๋ฐฐ์ •์‚ฌ์šฉ์ž๋ช…์„ '์—…๋ฌด์šฉ(TEMP_44666b)'์œผ๋กœ ๋™๊ธฐํ™”ํ•จ. (์ˆ˜์ •๊ฑด์ˆ˜: " . $stmt1->rowCount() . "๊ฑด)\n"; // 2. ๋งค๊ฐ ๋Œ€์ƒ์ž ID ๋ณต๊ตฌ ์‹œ๋„ (๋ฌธ์ž์—ด ์ด๋ฆ„ -> ์ •์ˆ˜ ID) // ๊ธฐ์กด disposal_recipient์— ์ด๋ฆ„์ด ์žˆ๋Š” ๊ฒฝ์šฐ users ํ…Œ์ด๋ธ”๊ณผ ๋Œ€์กฐํ•˜์—ฌ disposal_user_id ์ฑ„์šฐ๊ธฐ $allDisposed = $db->query("SELECT id, disposal_recipient FROM laptop_assets WHERE status = 'disposed' AND disposal_recipient IS NOT NULL AND disposal_user_id IS NULL")->fetchAll(PDO::FETCH_ASSOC); $restoredCount = 0; $userFinder = $db->prepare("SELECT id FROM users WHERE name = ? LIMIT 1"); $idUpdater = $db->prepare("UPDATE laptop_assets SET disposal_user_id = ? WHERE id = ?"); foreach ($allDisposed as $row) { $userFinder->execute([$row['disposal_recipient']]); $uid = $userFinder->fetchColumn(); if ($uid) { $idUpdater->execute([$uid, $row['id']]); $restoredCount++; } } echo "โœ… ๋งค๊ฐ ์ž์‚ฐ์˜ ๋Œ€์ƒ์ž ID(disposal_user_id)๋ฅผ ์‚ฌ๋‚ด ์ง์› ๋ฐ์ดํ„ฐ์™€ ๋Œ€์กฐํ•˜์—ฌ ๋ณต๊ตฌํ•จ. (๋ณต๊ตฌ๊ฑด์ˆ˜: $restoredCount ๊ฑด)\n"; echo "--- ๐ŸŽ‰ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ---"; } catch (Exception $e) { echo "โŒ ์˜ค๋ฅ˜: " . $e->getMessage() . "\n"; }