10/10/2018, 11:00

Các pro về javascript giúp em với về mà xác nhận

Em có một đoạn mã html như sau:
<?php
session_start();

if(isset($_POST['ok']))
{
if($_POST['txtCaptcha'] == NULL)
{
echo "Please enter your code";
}
else
{
if($_POST['txtCaptcha'] == $_SESSION['security_code'])
{
echo "ma lenh hop le";
}
else
{
echo "Ma lenh khong hop le";
}
}
}

?>


<form action="abc.php" method=post>
<table>
<tr>
<td align="left">
<label for="captcha">Captcha</label>
</td>
<td>
<input type="text" name="txtCaptcha" maxlength="10" size="32" />
</td>
<td>
<img src="random_image.php" />
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>
<input type=submit name=ok value="Check" />
</td>
</tr>
</table>
</form>
va một trang php tạo ảnh cho đoạn mã xác nhận đó:
<?php
create_image();
exit();

function create_image()
{

$md5_hash = md5(rand(0,999));
$security_code = substr($md5_hash, 15, 5);
$_SESSION["security_code"] = $security_code;
$width = 100;
$height = 30;
$image = ImageCreate($width, $height);
$white = ImageColorAllocate($image, 255, 255, 255);
$black = ImageColorAllocate($image, 0, 0, 0);
ImageFill($image, 0, 0, $black);
ImageString($image, 5, 30, 6, $security_code, $white);
header("Content-Type: image/jpeg");
ImageJpeg($image);
ImageDestroy($image);
}
?>
Giờ em muốn khi người dùng nhập đúng mã xác nhận nó sẽ nhảy tới trang abc.php còn nếu nhập sai thì nó sẽ không cho sang trang abc.php và xuất hiện thông báo lỗi! -----------------HELP-------------
nnanh01 viết 13:03 ngày 10/10/2018
Coi link này:
http://www.ddth.com/showthread.php?s=&threadid=10580
vanlien129 viết 13:06 ngày 10/10/2018
Cám ơn bạn.
Nhưng mà ý của mình muốn hỏi là dùn 1 đoạn javascript để điều khiểu form cơ.
Nghĩa là nếu mình nhập sai mã xác nhận thì form đó sẽ không submit và báo lỗi, còn nếu mình nhập đúng thì form đó sẽ cho nhảy qua trang abc.php và không bị báo lỗi nữa---------------HELP-------------
truongson1810 viết 13:08 ngày 10/10/2018
Có 2 cách :

(1) Đặt luôn đoạn code tạo image trong cùng 1 file có form. Khi đó chỉ cần echo cái $_SESSION["security_code"] ra 1 biến javascript, và khi form submit thì check mã nhập với biến này rồi xử lý

(2) Dùng code hiện tại của bạn (file tạo image riêng) : nếu muốn dùng javascript check , bắt buộc phải dùng ajax call đến 1 file php, file này sẽ check dữ liệu nhập với giá trị lưu trong session, rồi trả về cho js xử lý tiếp (hoặc đơn giản gọi ajax đến file php để lấy code đang lưu trong session, sau đó check giá trị trả về với dữ liệu nhập vô).

Goodluck!
vanlien129 viết 13:03 ngày 10/10/2018
Cám ơn bạn đã cho mình ý kiến.
Nhưng mình là dân mới vào nghề lên mấy cái đó chưa có kn nhiều hi`hi`.
Bạn có thể cho mình một đoạn code nào tương tự như vậy xử lý javascript + với php. Cám ơn cả nhà nhiều.

[=========> Bổ sung bài viết <=========]

Mọi người ơi cho em xin đoạn code javascript mà nó so sánh giá trị của thể input nhập vào với giá trị SESSION của php. Tks
Bài liên quan
0