ถามเรื่องการใช้ sprintf อะครับ ช่วยดูห้หน่อยนะครับ ว่ามันผิดตรงไหน ผมแก้จน งง ไปหมด
ทั้งหมดเป็นหน้า ที่มีการแก้ไข และลบ ข้อความ
ซึ่งพอผมกดลบมันขึ้น error แบบข้างล่าง
Code
Warning: Cannot modify header information - headers already sent by (output started at C:\AppServ\www\repair2\admin\showSub_Group.php:46) in C:\AppServ\www\repair2\admin\showSub_Group.php on line 59
แต่พอกดอีกครั้งมันก็ลบได้ ดูตามบันทัดที่ 46-59 ก็ไม่รู้ว่าผิดตรงไหน
Code (PHP)
<?php require_once("../Connections/docconnection.php"); ?>
<?php
if (!isset($_SESSION)) {
session_start();
}
include ("../function.php");
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
mysql_select_db($database_schoolsmile, $schoolsmile);
$query_Sub_GroupRS = sprintf("SELECT * FROM tbl_sub_group ORDER BY id_s ASC");
$Sub_GroupRS = mysql_query($query_Sub_GroupRS, $schoolsmile) or die(mysql_error());
$row_Sub_GroupRS = mysql_fetch_assoc($Sub_GroupRS);
$totalRows_Sub_GroupRS = mysql_num_rows($Sub_GroupRS);
?>
<?php
if ((isset($_POST['hiddenDelID'])) && ($_POST['hiddenDelID'] != "")) {
$deleteSQL = sprintf("DELETE FROM tbl_sub_group WHERE id_s = %s",
GetSQLValueString($_POST['hiddenDelID'], "int"));
mysql_select_db($database_schoolsmile, $schoolsmile);
$Result1 = mysql_query($deleteSQL, $schoolsmile) or die(mysql_error());
$deleteGoTo = "showSub_Group.php";
if (isset($_SERVER['QUERY_STRING'])) {
$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
$deleteGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s"));
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ระบบจัดการเว็บไซต์</title>
<link href="adminstyle.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style1 {color: #FF0000}
-->
</style>
</head>
<table width="560" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="left"><table width="550" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC">
<tr>
<td height="25" colspan="4" align="center" bordercolor="#FFFFFF" bgcolor="#E4CAAF"><img src="../images/04.png" width="16" height="16" /> แสดงแผนก</td>
</tr>
<tr>
<td height="10" colspan="4" align="right" bordercolor="#FFFFFF">จำนวนทั้งหมด <?php echo $totalRows_Sub_GroupRS; ?></td>
</tr>
<tr>
<td width="140" height="25" align="center" bordercolor="#FFFFFF" bgcolor="#CCCCCC">รหัสแผนก</td>
<td align="center" bordercolor="#FFFFFF" bgcolor="#CCCCCC">ชื่อแผนก</td>
<td width="40" align="center" bordercolor="#FFFFFF" bgcolor="#CCCCCC">แก้ไข</td>
<td width="40" align="center" bordercolor="#FFFFFF" bgcolor="#CCCCCC">ลบ</td>
</tr>
<?php if ($totalRows_Sub_GroupRS > 0) { // Show if recordset not empty ?>
<?php do { ?>
<tr >
<td height="1" colspan="4" align="center" bordercolor="#FFFFFF" bgcolor="#CCCCCC"><img src="../images/px1.gif" width="1" height="1"></td>
</tr>
<tr >
<td bordercolor="#FFFFFF" bgcolor="#F5F5F5"> <strong><?php echo $row_Sub_GroupRS['id_s']; ?></strong></td>
<td align="left" bordercolor="#FFFFFF" bgcolor="#F5F5F5"> <strong><?php echo $row_Sub_GroupRS['gsname']; ?></strong>
</td>
<td align="center" bordercolor="#FFFFFF" bgcolor="#F5F5F5">
<form name="formEdit" method="post" action="showSub_Group.php#editSub_Group">
<input type="image" name="edit" value="Submit" src="../images/b_edit.png" alt="แก้ไขข้อมูล">
<br>
<input name="hiddenEditID" type="hidden" id="hiddenEditID" value="<?php echo $row_Sub_GroupRS['id_s']; ?>">
</form></td>
<td align="center" bordercolor="#FFFFFF" bgcolor="#F5F5F5">
<form name="formDelete" method="post" action="showSub_Group.php" onsubmit="return R_confirm('<?php echo $row_Sub_GroupRS['gsname']; ?>')">
<input type="image" name="edit" value="Submit" src="../images/b_drop.png" alt="ลบข้อมูล" >
<br>
<input name="hiddenDelID" type="hidden" id="hiddenDelID" value="<?php echo $row_Sub_GroupRS['id_s']; ?>">
</form></td>
</tr>
<?php } while ($row_Sub_GroupRS = mysql_fetch_assoc($Sub_GroupRS)); ?>
<?php } // Show if recordset not empty ?>
</table>
<br>
<a name="editSub_Group"></a>
<?php
if ((isset($_POST['hiddenEditID'])) && ($_POST['hiddenEditID'] != "")) {
include("editSub_Group.php");
}
else {
include ("addSub_Group.php");
}
?>
<br>
</td>
</tr>
</table>
<script language="JavaScript">
function R_confirm(msg)
{
var x=window.confirm("ต้องการลบข้อมูลนี้\n'"+msg+"'\nใช่หรือไม่?");
return (x);
}
</script>
<?php
mysql_free_result($Sub_GroupRS);
?>
Tag : PHP
Date :
2013-09-16 16:27:27
By :
pattarom
View :
1471
Reply :
3
ลอง Save File ให้เป็นแบบ UTF-8 Without BOM ครับ
Date :
2013-09-16 17:41:20
By :
mr.win
ใส่ <? ob_start(); ?> ไว้บนสุดครับ
Date :
2013-09-16 17:51:33
By :
jackkichan
คุณเว้นบรรทัดที่บรรทัดที่ 45 ทำให้ php ส่ง header ไปก่อนที่คุณต้องการครับ การแก้คือ ลบบรรทัดที่ 45 ที่เป็นเคาะบรรทัดนั่นออกครับ
ส่วน ob_start จำเป็นมั้ย ขอตอบว่าแล้วแต่งานนะครับ ถ้าไม่สลักสำคัญนักก็ไม่ต้องใช้ เพราะมันต้องคอยจนกว่าจะจบไฟล์หรือจะสั่ง fetch ออกมาครับ
Date :
2013-09-16 18:17:08
By :
itpcc
Load balance : Server 04