您好我想从数据库中自动填充我的数据。它工作正常,但我得到一个错误,即#34; Notice: Undefined index: search in C:\xampp\htdocs\diu\Payments_Entry.php on line 37
。
有什么建议吗?请帮我解决这个问题.. 我试过,但我没有得到任何解决方案。需要帮助。
这是我的代码`
<?php
require("connection/connect.php");
$search=$_POST['search'];
$data = 'SELECT * FROM `stu_tbl` WHERE `reg` = "'.$search.'"';
$query = mysql_query($data) or die("Couldn't execute query. ". mysql_error());
$datas = mysql_fetch_array($query);
?>
<form name="form" method="POST" action="">
<input type="text" class="form-control" name="search" placeholder="Search" title="Enter name for search " class="search" autocomplete="off"/>
<button type="submit" class="btn btn-primary"name="btnsearch" value="submit" />Search</button>
</form>
<!-- form to display record from database -->
<form name="form" method="POST" name="btn_sub">
Name: <input type="text" name="s_name" value="<?php echo $datas['s_name']?>"/> <br>
Reg: <input class="form-control" type="text" name="reg" value="<?php echo $search ?>"/> <br>
Faculty: <input type="text" name="factxt" value="<?php echo $datas['program']?>"/><br><br>
<input type="hidden" name="stu_id" value="<?php echo $datas['stu_id']?>">
Semester: <select name="semtxt" class="form-control">
<option selected="">Select</option>
<option>1st</option>
<option>2nd</option>
<option>3rd</option>
<option>4th</option>
<option>5th</option>
<option>6th</option>
<option>7th</option>
<option>8th</option>
<option>9th</option>
<option>10th</option>
<option>11th</option>
<option>12th</option>
</select><br>
Payment Category: <select name="papytxt" id="textbox" class="form-control">
<option>Select</option>
<?php
$subject=mysql_query("SELECT * FROM payment");
while ($row=mysql_fetch_array($subject)) {
if($row['payment_name']==$rs_upd['payment_name'])
$iselect="selected";
else
$iselect="";
?>
<option value="<?php echo $row['payment_name'];?>" <?php echo $iselect ;?> >
<?php echo $row['payment_name'];?>
</option>
<?php
}
?>
</select><br>
Total Pay: <input type="text" name="tptxt"><br>
<input type="submit" value="submit" name="btn_sub"><br>
</form>
<?php
if (isset($_POST['btn_sub'])) {
$stu_id=$_POST['stu_id'];
$semester=$_POST['semtxt'];
$s_name=$_POST['s_name'];
$reg=$_POST['reg'];
$fa_name=$_POST['factxt'];
$pay_name=$_POST['papytxt'];
$totalpay=$_POST['tptxt'];
$data = "INSERT INTO payment_all
VALUES(
NULL,
'$stu_id',
'$semester',
'$s_name',
'$reg',
'$fa_name' ,
'$pay_name',
'$totalpay'
)";
$query = mysql_query($data) or die("Couldn't execute query. ". mysql_error());
}
?>
</body>
</html>`
答案 0 :(得分:2)
我在第37行附近看不到可能引发错误的任何内容。不过你的话说:
$search = (isset($_POST['search']) ? $_POST['search'] : '');
应该说:
{{1}}
这样做可以防止您的错误。
答案 1 :(得分:0)
您需要$search=$_POST['search'];
中的if statement
行,以便php在提交表单后尝试访问
<强> E.g 强>
if(isset($_POST['submit']))
{
// now apply your business logic here
}