PDA

View Full Version : Gặp rắc rôí về biến form



vn.disable
24-10-2008, 13:06
Mình có đoạn code sau :



<?php



if(!isset($submit)) // DK neu chua SUBMIT thi hien FORM nhap thong tin
{
?>
<font size="7"><b>Submit form</b></font>
</br>
</br>
Id : <? echo $nextid; ?>
<form name="submit form" action="ex1.php" method="post">
Name :&nbsp;<input name="txt_name" type="text" value="">
</br>
</br>
<input type="submit" name="submit" value="Submit">
<input type="reset" name="reset" value="Reset">
</form>
<?
}
else
{

?>
<b><font size="7">Confirm</font></b></br>
<b>Vui long kiem tra lai thong tin truoc khi thuc hien !</b></br></br>
Id = <?=$nextid?> </br>
Name = <?=$txt_name?>
<form name="confirm" action="ex1.php" method="post">
<input name="confirm" type="submit" value="Send">
</form>
<?
}
if(isset($confirm)) // Kiem tra neu da CONFIRM thi INSERT du lieu vao DB
{
echo $txt_name;

}
?>


Ban đâù trang ex1.php sẽ hiện phần input text(vơí name=name) để nhập liệu, sau đó sẽ hiện thông tin lên để confirm sau đó sẽ insert vào db, mình dùng biến $name có từ form, đến phần confirm thì còn giá trị nhưng khi insert thì nó ko còn tồn tại nưã, gặp thông báo sau :

Notice: Undefined variable: txt_name in C:\Program Files\Apache Group\Apache2\htdocs\example\ex1.php on line 52


Xin chỉ ra chỗ sai của mình

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

tạm thơì mình để echo $txt_name ở khâu cuôí cùng để test...

phamduyvt
24-10-2008, 13:17
Tên form và tên input trùng nhau
<form name="confirm"....
<input name="confirm"...
Bạn kiểm tra lại đi

vn.disable
24-10-2008, 14:29
Thanks bạn đã reply nhưng mình đã tìm ra dc nguyên nhân, thực ra không phải do trùng trên form và tên input mà là trong page này, mình có 2 form, 2 form action cùng 1 trang ex1.php, khi form nhập liệu action, mình sẽ có các biến form của form nhập liệu, sau đó wa bước confirm, form confirm action lần nưã..mình nghĩ các biến form của form nhập liệu đã bị xóa, thay vào đó sẽ có các biến mơí do form confirm cung cấp...

Mình chèn thêm 1 input hidden "name" trong form confirm mang giá trị của biến "txt_name" của form nhập liệu thì giải quyết dc vấn đề.