2013-11-25 67 views
0

我的形式打印和提交插入到DATABSE在同一個頁面中相同的提交按鈕

<form method="post" action="" enctype="multipart/form-data"> 
<div id="mydiv"> 
<tr> 
<td>Service Provider & Type</td> 
<td><?php echo $row['cab_name'];?></td> 
<td>Name</td> 
<td><?php echo $_SESSION['name'];?></td> 
</tr> 
    <input type="submit" value="Print" onClick="PrintElem('#mydiv')" style="border:0px;" class="submit" /> 
</div> 

</form> 

操作頁面

$booker_name=$_POST['name']; 
$service_provider=$_POST['cab_name']; 

$sql="INSERT INTO ticket_details(booker_name, 
service_provider) values('$booker_name','$service_provider')"; 

在這裏,我想打印的股利也提交數據插入到同一頁面的數據庫..但是,當我按下打印按鈕,它給我打印選項一起它也插入到數據庫的值,但問題是同時頁面自動刷新&空值也插入&在索姆頁面中的e字段在頁面刷新後給了我未定義的索引錯誤。我知道這個問題發生的原因是在同一頁面給予acton,但我已經做到了這一點..任何想法來克服這種情況?

回答

0

所以......數據只能插入表單提交時,你有你的包裹中插入一些條件語句如..

設置一個隱藏的價值

<input type="hidden" name="action" value="form_submitted"> 

包住插入代碼中的if語句

if(isset($_POST['action']) && $_POST['action'] == 'form_submitted'){ 
YOUR INSERT CODE 
} 

這是一個有點粗糙,但應該可以幫助你的想法