Reply: Help kiểm tra dữ liệu trong input text
Code xử lí của bạn chỉ check
$cuonglucz<=$points >> cộng điểm cường lực >> $noilucz<=$points >> cộng điểm nội lực
nó cứ cộng điểm độc lập, không kiểm tra xem sau khi cộng điểm cường lực xong thì số points còn lại có đủ cộng điểm nôi lực không mà cứ cộng mà không cần kiểm tra
code này còn có chỗ viêt lung tung không có tác dụng, lớp truy vấn $tlbb_web->query()
$query = "select charname,str,points,charguid from tlbbdb.t_char where charguid='$charguid'";
$sttchar=$row["charguid"];
$tenchar=$row["charname"];
Tạm sửa code xử lí như sau
Mã:
// kiem tra cuonglucz + noilucz khong vuot qua points
if(($cuonglucz >= 0) && ($noilucz >= 0) && (($cuonglucz + $noilucz) <= points)){ // diem cong phu hop
// cong diem cuonglucz va noilucz
$query = "UPDATE t_char SET points = points - $cuonglucz - $noilucz, str = str + $cuonglucz, spr = spr + $noilucz WHERE charguid = '$charguid'";
$check = $tlbb_web->query($query);
echo '<center><b><font color="red">bạn đã cộng thành công <font color="blue">'.$cuonglucz.' cường lực</font> và <font color="blue">'.$noilucz.' nội lực</font></font></b></center>';
}else{ // diem cong khong phu hop
echo '<center><b><font color="red">bạn đã nhập <font color="blue">'.$cuonglucz.' cường lực</font> và <font color="blue">'.$noilucz.' nội lực</font>, điểm cộng nhập không thỏa mãn điều kiện: không âm và tổng điểm cộng không vượt quá số points hiện có (<font color="blue">'.points.' points</font>), hãy nhập lại!</font></b></center>';
}