เราสร้างไฟล์คอนแท็บ เพื่อหาค่าจากตาราง hm2_history ดูว่า ฟิลด์ type = commission มั้ย ถ้าใช่ เพิ่มเรคคอร์ดลงในดาต้าเบส hm2_history ค่าทุกอย่างเหมือนเดิม ต่างกันแค่จำนวนเงินเป็นติดลบ
จากนั้นเอาข้อมูลคล้ายๆแบบเดิมไปเพิ่มในอีกตาราง คือ ตาราง hm2_deposit แต่โค้ดที่เราเขียนไม่รู้ถูกต้องมั้ย มันขึ้นแค่ว่า connection susccess พอลองกดไปดู ไม่มีอะไรเพิ่มในต้าต้าเบสเลย แก้ตรงไหนคะ
<?php
$servername = "localhost";
$username = "tinybaht";
$password = "212224";
function setChecked($conn,$params){
$s = $conn->prepare("UPDATE `hm2_history`
SET history_ref_id=-1
WHERE id=:id
");
$s->execute($params);
}
try {
$conn = new PDO("mysql:host=$servername;dbname=tinybaht_findroom", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch(PDOException $e)
{
echo "Connection failed: " . $e->getMessage();
$stmt = $conn->prepare("SELECT parent,name FROM hm2_plans");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$a = $stmt->fetchAll();
$plans = array();
foreach($a as $i){
$plans[$i['parent']] = $i['name'];
}
$stmt = $conn->prepare("SELECT * FROM hm2_history WHERE id NOT IN(SELECT history_ref_id FROM hm2_history WHERE history_ref_id > 0) AND type='commissions' ");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$rows = $stmt->fetchAll();
foreach($rows as $k=>$v) {
//history
$s = $conn->prepare("INSERT INTO `hm2_history`
SET `user_id`=:user_id,
`amount`=:amount,
`type`=:type,
`description`=:description,
`actual_amount`=:actual_amount,
`date`=:date,
`ec`=:ec,
`deposit_id`=:deposit_id,
`rate`=:rate,
`history_ref_id`=:history_ref_id
");
$x = array(
'user_id'=>$v['user_id'],
'type'=>'depoit',
'amount'=> -$v['amount'],
'description'=>'Deposit from plan',
'actual_amount'=> -$v['actual_amount'],
'date'=>$date,
'ec'=>999,
'deposit_id'=>$lastDepositId,
'rate'=>1.0,
);
$s->execute($x);
//deposit
$s = $conn->prepare("INSERT INTO `hm2_deposits`
SET `user_id`=:user_id,
`type_id`=:type_id,
`deposit_date`=:deposit_date,
`last_pay_date`=:last_pay_date,
`status`=:status,
`q_pays`=:q_pays,
`amount`=:amount,
`actual_amount`=:actual_amount,
`ec`=:ec,
`compound`=:compound,
`dde`=:dde,
`unit_amount`=:unit_amount,
`bonus_flag`=:bonus_flag,
`init_amount`=:init_amount,
`ref_id`=:ref_id,
`history_ref_id`=:history_ref_id
");
$v['type_id'] = 9;
$v['ref_id'] = 0;
$v['history_ref_id'] = $v['id'];
$v['amount'] = $v['amount'];
$v['actual_amount'] = $v['actual_amount'];
$v['init_amount'] = $v['init_amount'];
$v['bonus_flag'] = 1;
unset($v['id']);
$s->execute($v);
$lastDepositId = $conn->lastInsertId();
}
}
?>