使用php中的单选按钮从MS SQL SERVER中删除行

Deleting Rows from MS SQL SERVER using radio button in php

本文关键字:SQL SERVER MS 删除行 单选按钮 php 使用      更新时间:2023-09-26

我想使用php删除MS SQL中的行,但

$ids = $_POST['id'];
有问题当我点击单选按钮和"删除"按钮时,就会发生这种情况

<?php
$serverName = "kwekwe-PC'SQLEXPRESS";
$connectionInfo = array( "Database"=>"customerdb", "UID"=>"dbadmin", "PWD"=>"kwekwe" );
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
     die( print_r( sqlsrv_errors(), true));
}
 //declare the SQL statement that will query the database
     $query = "SELECT * FROM Customer_Details";
 //execute the SQL query and return records
     $result = sqlsrv_query($conn, $query)
         or die( print_r( sqlsrv_errors(), true));
 //Show results in table
 $o = '<table border=1 id="myTable">
         <thead>
         <tr>
         <th>&nbsp</th>
         <th>REC NUMBER</th>
         <th>CUSTOMER ID</th>
         <th>CUSTOMER NAME</th>
         <th>SEC-REGISTERED NAME</th>
         <th>TIN NUMBER</th>
         <th>STORE TYPE</th>
         <th>SIZE OF BUSINESS</th>
         <th>SELLER ID</th>
         <th>DATE OF ESTABLISHMENT</th>
         <th>TELEPHONE#/FAX</th>
         <th>PAYMENT TERMS</th>
         <th>SHIPPING INSTRUCTIONS</th>
         <th>NUMBER OF DOORS</th>
		 <th>NUMBER OF WAREHOUSES</th>
		 <th>OWNER</th>
		 <th>PURCHASER/S</th>
		 <th>ACCOUNTING HEAD</th>
		 <th>WAREHOUSE HEAD</th>
		 <th>OTHER PERSONNEL</th>
		 <th>PAYMENT TERMS 2</th>
		 <th>COLLECTION SCHEDULE</th>
		 <th>DISCOUNT</th>
		 <th>VOLUME</th>
		 <th>MERCHANDISING</th>
		 <th>VEHICLE</th>
		 <th>DISTRIBUTION</th>
		 <th>CSL</th>
		 <th>ASSORTMENT</th>
		 <th>PRICING</th>
		 <th>MARGIN</th>
		 <th>PRICE</th>
		 <th>PROMOTION</th>
		 <th>PEOPLE</th>
		 <th>OTHERS</th>
		 <th>REPLENISHMENT ORDERS</th>
		 <th>ASSORTMENT/MERCHANDISING</th>
		 <th>NEW PRODUCTS</th>
		 <th>PRICING/PROMOTION</th>
		 <th>PICTURE</th>
         </tr>
         </thead><tbody>';
      while ( $record = sqlsrv_fetch_array($result) )
          {
              $o .= '<tr><td><input type=radio name=id value='.$record ['Rec_No'].'></td>';
              $o .= '<td>'.$record ['Rec_No'].'</td>';
              $o .= '<td>'.$record ['Cust_ID'].'</td>';
			  $o .='<td>'.$record ['Cust_Name'].'</td>';  
			  $o .='<td>'.$record ['SEC_Name'].'</td>';  
			  $o .='<td>'.$record ['TIN Number'].'</td>';  
			  $o .='<td>'.$record ['Store_Type'].'</td>';  
			  $o .='<td>'.$record ['Size of Business'].'</td>';  
			  $o .='<td>'.$record ['Seller_ID'].'</td>'; 
			  $o .='<td>'.date('F d, Y',strtotime($record ['Date of Establishment'])).'</td>'; 
			  $o .='<td>'.$record ['Telephone/Fax'].'</td>'; 
			  $o .='<td>'.$record ['Payment Terms'].'</td>'; 
			  $o .='<td>'.$record ['Shipping Instructions'].'</td>'; 
			  $o .='<td>'.$record ['Number of Doors'].'</td>'; 
			  $o .='<td>'.$record ['Number of Warehouses'].'</td>';  
			  $o .='<td>'.$record ['Owner'].'</td>'; 
			  $o .='<td>'.$record ['Purchaser(s)'].'</td>'; 
			  $o .='<td>'.$record ['Accounting Head'].'</td>'; 
			  $o .='<td>'.$record ['Warehouse Head'].'</td>'; 
			  $o .='<td>'.$record ['Other Personnel'].'</td>'; 
			  $o .='<td>'.$record ['Payment Terms 2'].'</td>'; 
			  $o .='<td>'.$record ['Collection Schedule'].'</td>'; 
			  $o .='<td>'.$record ['Discount'].'</td>'; 
			  $o .='<td>'.$record ['Volume'].'</td>'; 
			  $o .='<td>'.$record ['Merchandising'].'</td>';  
			  $o .='<td>'.$record ['Marketing Vehicle'].'</td>'; 
			  $o .='<td>'.$record ['Distribution'].'</td>'; 
			  $o .='<td>'.$record ['CSL'].'</td>'; 
			  $o .='<td>'.$record ['Assortment'].'</td>'; 
			  $o .='<td>'.$record ['Pricing'].'</td>'; 
			  $o .='<td>'.$record ['Margin'].'</td>'; 
			  $o .='<td>'.$record ['Price'].'</td>'; 
			  $o .='<td>'.$record ['Promotion'].'</td>'; 
			  $o .='<td>'.$record ['People'].'</td>'; 
			  $o .='<td>'.$record ['Others'].'</td>'; 
			  $o .='<td>'.$record ['Replenishment Orders'].'</td>';  
			  $o .='<td>'.$record ['Assortment/Merchandising'].'</td>'; 
			  $o .='<td>'.$record ['New Products'].'</td>'; 
			  $o .='<td>'.$record ['Pricing/Promotions'].'</td>'; 
			$o .='<td><img height=127 width=127 src="data:image/png;base64,' . $record['image'] . '"></td>';
			  $o .='</tr>';
          }               
       $o .= '</tbody></table>';
       echo $o;
    //free result set memory
        //mssql_free_result($result);
    //close the connection
        //sqlsrv_close($dbhandle);
?>
	<form action="delete.php" method="POST">
	<br><input type="submit" value="Delete" name="submit">
	</form>
<?php
	$ids = $_POST['id'];
	if (isset($_POST['submit']))
	{
	$serverName = "MELODY-PC'SQLEXPRESS";
	$connectionInfo = array( "Database"=>"customerdb", "UID"=>"dbadmin", "PWD"=>"melodyjerah" );
	$conn = sqlsrv_connect( $serverName, $connectionInfo);
	if( $conn === false ) {
     die( print_r( sqlsrv_errors(), true));
}
	$sql = "DELETE FROM Customer_Details WHERE Rec_Num =".$ids;
	sqlsrv_query($conn, $sql);
	echo "Row with ID ".$ids." has been deleted!";
	}
?>

您想一次删除多行还是单行?如果要删除多行,请使用复选框而不是单选按钮否则使用超链接删除单行

像这个

$o .= '<tr><td><a href="delete.php?id='.$record["Rec_No"].'">Delete</a></td>';

删除多行

$o .= '<tr><td><input type="checkbox" name="id[]" value='.$record ['Rec_No'].'></td>';

试试这个:

$serverName = "kwekwe-PC'SQLEXPRESS";
$connectionInfo = array("Database" => "customerdb", "UID" => "dbadmin", "PWD" => "kwekwe");
$conn = sqlsrv_connect($serverName, $connectionInfo);
if ($conn === false) {
    die(print_r(sqlsrv_errors(), true));
}
//declare the SQL statement that will query the database
$query = "SELECT * FROM Customer_Details";

//execute the SQL query and return records
$result = sqlsrv_query($conn, $query)
        or die(print_r(sqlsrv_errors(), true));
//Show results in table
$o = '<table border=1 id="myTable">
         <thead>
         <tr>
         <th>&nbsp</th>
         <th>REC NUMBER</th>
         <th>CUSTOMER ID</th>
         <th>CUSTOMER NAME</th>
         <th>SEC-REGISTERED NAME</th>
         <th>TIN NUMBER</th>
         <th>STORE TYPE</th>
         <th>SIZE OF BUSINESS</th>
         <th>SELLER ID</th>
         <th>DATE OF ESTABLISHMENT</th>
         <th>TELEPHONE#/FAX</th>
         <th>PAYMENT TERMS</th>
         <th>SHIPPING INSTRUCTIONS</th>
         <th>NUMBER OF DOORS</th>
         <th>NUMBER OF WAREHOUSES</th>
         <th>OWNER</th>
         <th>PURCHASER/S</th>
         <th>ACCOUNTING HEAD</th>
         <th>WAREHOUSE HEAD</th>
         <th>OTHER PERSONNEL</th>
         <th>PAYMENT TERMS 2</th>
         <th>COLLECTION SCHEDULE</th>
         <th>DISCOUNT</th>
         <th>VOLUME</th>
         <th>MERCHANDISING</th>
         <th>VEHICLE</th>
         <th>DISTRIBUTION</th>
         <th>CSL</th>
         <th>ASSORTMENT</th>
         <th>PRICING</th>
         <th>MARGIN</th>
         <th>PRICE</th>
         <th>PROMOTION</th>
         <th>PEOPLE</th>
         <th>OTHERS</th>
         <th>REPLENISHMENT ORDERS</th>
         <th>ASSORTMENT/MERCHANDISING</th>
         <th>NEW PRODUCTS</th>
         <th>PRICING/PROMOTION</th>
         <th>PICTURE</th>
         </tr>
         </thead><tbody>';
while ($record = sqlsrv_fetch_array($result)) {
    $o .= '<tr><td><input type=radio name=id value=' . $record ['Rec_No'] . '></td>';
    $o .= '<td>' . $record ['Rec_No'] . '</td>';
    $o .= '<td>' . $record ['Cust_ID'] . '</td>';
    $o .='<td>' . $record ['Cust_Name'] . '</td>';
    $o .='<td>' . $record ['SEC_Name'] . '</td>';
    $o .='<td>' . $record ['TIN Number'] . '</td>';
    $o .='<td>' . $record ['Store_Type'] . '</td>';
    $o .='<td>' . $record ['Size of Business'] . '</td>';
    $o .='<td>' . $record ['Seller_ID'] . '</td>';
    $o .='<td>' . date('F d, Y', strtotime($record ['Date of Establishment'])) . '</td>';
    $o .='<td>' . $record ['Telephone/Fax'] . '</td>';
    $o .='<td>' . $record ['Payment Terms'] . '</td>';
    $o .='<td>' . $record ['Shipping Instructions'] . '</td>';
    $o .='<td>' . $record ['Number of Doors'] . '</td>';
    $o .='<td>' . $record ['Number of Warehouses'] . '</td>';
    $o .='<td>' . $record ['Owner'] . '</td>';
    $o .='<td>' . $record ['Purchaser(s)'] . '</td>';
    $o .='<td>' . $record ['Accounting Head'] . '</td>';
    $o .='<td>' . $record ['Warehouse Head'] . '</td>';
    $o .='<td>' . $record ['Other Personnel'] . '</td>';
    $o .='<td>' . $record ['Payment Terms 2'] . '</td>';
    $o .='<td>' . $record ['Collection Schedule'] . '</td>';
    $o .='<td>' . $record ['Discount'] . '</td>';
    $o .='<td>' . $record ['Volume'] . '</td>';
    $o .='<td>' . $record ['Merchandising'] . '</td>';
    $o .='<td>' . $record ['Marketing Vehicle'] . '</td>';
    $o .='<td>' . $record ['Distribution'] . '</td>';
    $o .='<td>' . $record ['CSL'] . '</td>';
    $o .='<td>' . $record ['Assortment'] . '</td>';
    $o .='<td>' . $record ['Pricing'] . '</td>';
    $o .='<td>' . $record ['Margin'] . '</td>';
    $o .='<td>' . $record ['Price'] . '</td>';
    $o .='<td>' . $record ['Promotion'] . '</td>';
    $o .='<td>' . $record ['People'] . '</td>';
    $o .='<td>' . $record ['Others'] . '</td>';
    $o .='<td>' . $record ['Replenishment Orders'] . '</td>';
    $o .='<td>' . $record ['Assortment/Merchandising'] . '</td>';
    $o .='<td>' . $record ['New Products'] . '</td>';
    $o .='<td>' . $record ['Pricing/Promotions'] . '</td>';
    $o .='<td><img height=127 width=127 src="data:image/png;base64,' . $record['image'] . '"></td>';
    $o .='</tr>';
}
$o .= '</tbody></table>';
?>
<form action="delete.php" method="POST">
    <?php echo $o; ?>
    <br><input type="submit" value="Delete" name="submit">
</form>
<?php
if (isset($_POST['submit'])) {
    $serverName = "MELODY-PC'SQLEXPRESS";
    $connectionInfo = array("Database" => "customerdb", "UID" => "dbadmin", "PWD" => "melodyjerah");
    $conn = sqlsrv_connect($serverName, $connectionInfo);
    if ($conn === false) {
        die(print_r(sqlsrv_errors(), true));
    }
    if(isset($_POST['id']) && !empty($_POST['id'])){
    $sql = "DELETE FROM Customer_Details WHERE Rec_No =" . $_POST['id'];
    sqlsrv_query($conn, $sql);
    echo "Row with ID " . $_POST['id'] . " has been deleted!";
    }else{
        echo "ID is empty";
    }
}