[請益] PHP中判斷視窗的疑問

作者: rjackie (向前走,才知道轉角)   2015-05-23 00:30:27
各位大大
小弟遇到一個小問題,就是在判斷某一值會跳出
一個警告視窗,如按確定就執行寫入資料庫,而
取消就什麼都不做,程式如下:
<script>
if(confirm("是否要存檔")){
//insert
$sql_query = "INSERT INTO award(CreateAt,RangeDays,current_falg) values(
$now_time','$RangeDays','1')";
$result = mysql_query($sql_query);?>");
}else{
document.location.href="index.php";
}
</script>
但是發現不管點確定或是取消都會執行到存檔,不知道有沒有更好的辦法呢?
作者: alog (A肉哥)   2015-05-23 00:42:00
client端的source code跟server端的要分開寫
作者: rjackie (向前走,才知道轉角)   2015-05-23 00:46:00
您是指用函數的方式嗎?
作者: alog (A肉哥)   2015-05-23 00:47:00
在全部寫在一起的情況下 php 的程式碼不會因為client 做什麼條件就會有不同的執行結果對php的直譯器而言 你用的任何html只是文字輸出
作者: rjackie (向前走,才知道轉角)   2015-05-23 00:49:00
呵呵我懂您的意思了,觀念錯誤 感謝提醒
作者: alog (A肉哥)   2015-05-23 00:49:00
會影響的只有<?php ?>的部分你可以對網址帶參數 或是ajax或html form 去執行你的php
作者: rjackie (向前走,才知道轉角)   2015-05-23 00:54:00
因為這是有帶POST的傳值,如果是用GET的方式會帶很非常多參數
作者: alog (A肉哥)   2015-05-23 00:58:00
用form 然後當沒有confirm時就阻止form的submit
作者: rjackie (向前走,才知道轉角)   2015-05-23 00:59:00
比較麻煩的部份是,submit檔過一次,只是要再傳值後再判斷一次或是說部份是已收到值後的判斷
作者: alog (A肉哥)   2015-05-23 01:01:00
通常後端的驗證是必要的 前端的驗證可以不用處理太細又或者你可以利用序列化的方式將變數資料整理成一個字串一種是serialize 一種是json_encodeserialize可以存比較複雜的資料
作者: rjackie (向前走,才知道轉角)   2015-05-23 01:05:00
感謝您的指導,我來研究看看序列化的方式

Links booklink

Contact Us: admin [ a t ] ucptt.com