ตอนนี้ค่าที่แสดงตอนกดคำนวณ
- ซึ่งผมต้องการให้รูปแบบการแสดงผลของบันทึกข้อมูลเป็นรูปแบบสวิตซ์ จึงขอคำสั่งที่ใช้แสดงสวิตซ์หน่อยครับ
HTML ที่ใช้รับค่าผลลัพธ์
โค้ด: เลือกทั้งหมด
<div class="row">
<div id="result_massage" class="panel">
<a name="result_massage"></a>
<div class="inner">
<fieldset>
<dl>
<dt><label> {L_NAME} </label></dt>
<dd>{tlandc_username}</dd>
</dl>
<dl>
<dt><label> {L_LAND_VALUE} </label></dt>
<dd>{tlandc_land_value} {L_BATH}</dd>
</dl>
<dl>
<dt><label>{L_BUILDING_VALUE}</label></dt>
<dd>{tlandc_building_value} {L_BATH}</dd>
</dl>
<dl>
<dt><label>{L_LAND_TYPE}</label></dt>
<dd>{tlandc_land_type_id}</dd>
</dl>
<dl>
<dt><label>{L_SAVE_DATA}</label></dt>
<dd>{save_data_tax}</dd>
</dl>
<dl>
<dt><label>{L_RESULT_TAX}</label></dt>
<dd>{tlandc_total_tax} {L_BATH}</dd>
</dl>
</fieldset>
</div>
</div>
<fieldset class="submit-buttons"></fieldset>
</div>
โค้ด: เลือกทั้งหมด
if ($request->is_set_post('submit')) {
$owner_name = $request->variable('tlandc_username', '', true);
$land_value = (float)$request->variable('tlandc_land_value', 0.0);
$building_value = (float)$request->variable('tlandc_building_value', 0.0);
$category = $request->variable('tlandr_category_id', '', true);
$save_data = $request->variable('save_data_tax', 0); // ดึงค่าของ checkbox
// ค้นหาอัตราภาษีที่ตรงกับประเภทของที่ดิน
$sql = 'SELECT tlandr_tax_rate
FROM tools_land_building_tax_rates
WHERE tlandr_category_id = "' . $db->sql_escape($category) . '"
AND tlandr_min_value <= ' . $land_value . '
AND (tlandr_max_value >= ' . $land_value . ' OR tlandr_max_value IS NULL)';
if ($building_value > 0) {
$sql .= ' AND (tlandr_max_value >= ' . ($land_value + $building_value) . ' OR tlandr_max_value IS NULL)';
} else {
$sql .= ' AND (tlandr_max_value >= ' . $land_value . ' OR tlandr_max_value IS NULL)';
}
$result = $db->sql_query($sql);
$tlandr_tax_rate = $db->sql_fetchfield('tlandr_tax_rate');
$db->sql_freeresult($result);
if ($tlandr_tax_rate == false) {
$result_message = "ไม่พบอัตราภาษีที่ตรงกับข้อมูลที่ให้ไว้.";
} else {
if ($building_value > 0) {
$tlandc_total_tax = ($land_value + $building_value) * $tlandr_tax_rate;
} else {
$tlandc_total_tax = $land_value * $tlandr_tax_rate;
}
// ตรวจสอบว่าผู้ใช้ต้องการบันทึกข้อมูลหรือไม่
if ($save_data) {
// บันทึกผลการคำนวณลงฐานข้อมูล
$sql_ary = array(
'tlandc_username' => $owner_name,
'tlandc_land_value' => $land_value,
'tlandc_building_value' => $building_value,
'tlandc_total_tax' => $tlandc_total_tax,
'tlandc_tax_rate' => $tlandr_tax_rate,
'tlandc_land_type_id' => $category,
'tlandc_create_date' => $timestamp,
);
$sql = 'INSERT INTO tools_land_building_tax_calculation ' . $db->sql_build_array('INSERT', $sql_ary);
$db->sql_query($sql);
$result_message = "คุณ $owner_name ต้องเสียภาษีทั้งหมด $tlandc_total_tax บาท ข้อมูลได้ถูกบันทึกแล้ว.";
} else {
$result_message = "คุณ $owner_name ต้องเสียภาษีทั้งหมด $tlandc_total_tax บาท ข้อมูลไม่ได้ถูกบันทึก.";
}
}
}
// ส่งค่าไปยังเท็มเพลต
if (isset($_POST['submit'])) {
$template->assign_vars(array(
'tlandc_username' => $owner_name,
'tlandc_land_value' => $land_value,
'tlandc_building_value' => $building_value,
'tlandc_total_tax' => $tlandc_total_tax,
'tlandc_land_type_id' => $category,
'save_data_tax' => $save_data,
'SHOW_RESULT' => true,
'FORM_ACTION' => append_sid("tools_land_building_tax_calculation.php"),
));
} else {
// ถ้าไม่มีการกดปุ่มคำนวณ ให้ตั้งค่า SHOW_RESULT เป็น false
$template->assign_vars(array(
'SHOW_RESULT' => false,
'FORM_ACTION' => append_sid("tools_land_building_tax_calculation.php"),
));
}