|
|
|
จะแก้ไขข้อมูลในดาต้าเบส แต่เจอ Warning: mysql_fetch_array(): supplied argument is not a valid MySQL ครับ |
|
|
|
|
|
|
|
พยายามลองแก้แล้วนะครับ
แต่อันนี้หาไม่เจอจริงๆ
วานผู้รู้ช่วยหน่อยนะครับ
ขออนุญาติยกมาทั้งดุ้นเลยนะครับ
Code (PHP)
<?php
ob_start();
include("../../include/dbconn.php"); //ไฟล์เชื่อมต่อฐานข้อมูล
include("../../include/paging.php"); //ไฟล์แบ่งหน้ากระดาษ
$num = 0; //ลำดับสินค้า
//เรียกใช้ใช้การแบ่งหน้ากระดาษ
$current_page = 1;
if(isset($_GET['page'])){
$current_page = $_GET['page'];
}
$rows_per_page = 10;
$start_row = paging_start_row($current_page, $rows_per_page);
$sql = "SELECT SQL_CALC_FOUND_ROWS * FROM product
LIMIT $start_row, $rows_per_page;";
$result = mysql_query($sql);
$found_rows = mysql_query("SELECT FOUND_ROWS();");
$total_rows = mysql_result($found_rows, 0, 0);
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Product</title>
<link href="../../css/index.css" rel="stylesheet">
<script>
function proEdit(pid){
if(!confirm('ต้องการแก้ไขสินค้า')){
return;
}
window.location = 'edit.php?pid=' + pid;
}
function proDelete(pid){
if(!confirm('ต้องการลบสินค้า')){
return;
}
window.location = 'main.php?pid=' + pid;
}
</script>
</head>
<body>
<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#0066FF">
<tr>
<td class="borderHead">
<table width="1024" align="center" border="0" cellpadding="0" cellspacing="0">
<tr id="head">
<td>หลังบ้าน ร้านมิตรภาพค้าเครื่องหวาย</td>
</tr>
</table>
</td>
</tr>
</table>
<table align="center" width="1024" border="0" cellpadding="0" cellspacing="0">
<tr>
<!-- เมนูด้านซ้าย -->
<td width="200" valign="top">
<?php include("../../include/menu.php"); ?>
</td>
<!-- ข้อมูลตรงกลาง -->
<td bgcolor="#F3F3F3"><br><br><br>
<!-- แสดงหน้าหลักที่เราดู, ไม่พบข้อมูล -->
<?php
if(isset($_GET['pid'])){
$pro_id = $_GET['pid'];
$sql = "DELETE FROM product where pro_id = $pro_id;";
mysql_query($sql);
header("location:main.php");
}
if($total_rows==0){
echo "<p align='center'>ไม่พบสินค้า</p>";
}
else{
$stop_row = paging_stop_row($start_row, $rows_per_page, $total_rows);
echo "<p align='center'>รายการสินค้าลำดับที่ ".($start_row + 1).
"-"."$stop_row จากทั้งหมด $total_rows </p>";
}
?>
<table class="border" align="center" width="90%" border="0" cellpadding="0" cellspacing="0">
<tr bgcolor="#0066FF">
<td valign="middle" class="rowHeightHead" align="center" width="70">ลำดับ</td>
<td align="center" width="100" class="rowHeightHead">ภาพ</td>
<td align="center" class="rowHeightHead">ชื่อ</td>
<td align="center" width="100" class="rowHeightHead">ราคา</td>
<td align="center" width="80" class="rowHeightHead">แก้ไข</td>
<td align="center" width="80" class="rowHeightHead">ลบ</td>
</tr>
<?php
while($row=mysql_fetch_array($result)){
$pid = $row["pro_id"];
$pro_name = $row["pro_name"];
$pro_price = $row["price"];
$num++;
?>
<tr>
<td align="center" class="rowHeight"><?php echo $num; ?></td>
<td align="center"><img width="150" src="read_image.php?pid=<?php echo $pid; ?>" /></td>
<td align="left"> <?php echo $pro_name; ?></td>
<td align="right"><?php echo number_format($pro_price,","); ?> </td>
<td align="center"><?php echo "<a href=\"javascript: proEdit($pid)\"><font color='red'>แก้ไข</font></a>";?></td>
<td align="center"><?php echo "<a href=\"javascript: proDelete($pid)\"><font color='red'>ลบ</font></a>";?></td>
</tr>
<?php } ?>
<tr>
<td colspan="6"> </td>
</tr>
</table>
<br><br><br>
</td>
</tr>
</table>
</body>
</html>
Tag : PHP, MySQL
|
|
|
|
|
|
Date :
2013-08-09 11:16:54 |
By :
กุมภกรรณ |
View :
737 |
Reply :
7 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ส่วนอันนี้เป็นหน้าที่แก้ไขแล้วเกิด Warning น่ะครับ
Code (PHP)
<?php
ob_start(); //แก้คำสั่ง header error
include("../../include/dbconn.php"); //ไฟล์เชื่อมต่อฐานข้อมูล
$pid = $_GET['pid'];
$pro_id = $_POST['pro_id'];
$pro_name = $_POST['pro_name'];
$price = $POST['price'];
$description = $POST['description'];
$type = $POST['type'];
$category = $POST['category'];
$img_data = "";
if($pro_id > 0){
$sql = "UPDATE product SET pro_name = '$pro_name',
price = '$price',
description = '$description',
type_id = '$type',
category_id = '$category' WHERE pro_id = '$pro_id';";
mysql_query($sql);
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Product add</title>
<link href="../../css/index.css" rel="stylesheet">
</head>
<body>
<table width="100%" border="0" cellpadding="0" cellspacing="0" bgcolor="#0066FF">
<tr>
<td class="borderHead">
<table width="1024" align="center" border="0" cellpadding="0" cellspacing="0">
<tr id="head">
<td>หลังบ้าน ร้านมิตรภาพค้าเครื่องหวาย</td>
</tr>
</table>
</td>
</tr>
</table>
<table align="center" width="1024" border="0" cellpadding="0" cellspacing="0">
<tr>
<!-- เมนูด้านซ้าย -->
<td width="200" valign="top">
<?php include("../../include/menu.php"); ?>
</td>
<?php
//เอาข้อมูลเดิมของสินค้ามาแสดงเพื่อแก้ไข
$sql = "SELECT * FROM product WHERE pro_id = $pid";
$result = mysql_query($sql);
while($row = mysql_fetch_array($result)){
$pro_id = $row['pro_id'];
$Pname = $row['pro_name'];
$Pprice = $row['price'];
$Pdescription = $row['description'];
$Pcategory = $row['category_id'];
$Ptype = $row['type_id'];
}
?>
<!-- ข้อมูลตรงกลาง -->
<td bgcolor="#F3F3F3"><br><br><br>
<form name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<table class="border" align="center" width="90%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="middle" class="rowHeightHead" align="center" colspan="2" bgcolor="#0066FF">แก้ไขข้อมูลสินค้า</td>
</tr>
<tr>
<td class="rowHeight">ภาพ</td>
<td class="rowHeight"><img width="150" src="read_image.php?pid=<?php echo $pro_id; ?>" />
</td>
</tr>
<tr>
<td class="rowHeight">ชื่อ</td>
<td class="rowHeight"><input name="pro_name" value="<?php echo $Pname; ?>" type="text" /></td>
</tr>
<tr>
<td class="rowHeight">ราคา</td>
<td class="rowHeight"><input name="price" value="<?php echo $Pprice; ?>" type="text" /></td>
</tr>
<tr>
<td class="rowHeight">รายละเอียด</td>
<td class="rowHeight"><textarea name="description" cols="30" rows="5"><?php echo $Pdescription; ?></textarea></td>
</tr>
<tr>
<td class="rowHeight">ประเภท</td>
<td class="rowHeight">
<select name="type">
<option value="">เลือกประเภทเฟอร์นิเจอร์</option>
<?php
$sqlType = "SELECT type_id, type_name FROM type";
$queryType = mysql_query($sqlType)or die(mysql_error());
while($resultType = mysql_fetch_array($queryType))
{
?>
<option value="<?php echo $resultType['type_id']; ?>"
<?php if($Ptype == $resultType['type_id']){ echo "selected"; } ?>>
<?php echo $resultType['type_name']; ?>
</option>
<?php
}
?>
</select>
</td>
</tr>
<tr>
<td class="rowHeight">หมวดหมู่</td>
<td class="rowHeight">
<select name="category">
<option value="">เลือกประเภทเฟอร์นิเจอร์</option>
<?php
$sqlCategory = "SELECT category_id, category_name FROM category";
$queryCategory = mysql_query($sqlCategory)or die(mysql_error());
while($resultCategory = mysql_fetch_array($queryCategory))
{
?>
<option value="<?php echo $resultCategory['category_id']; ?>"
<?php if($Pcategory == $resultCategory['category_id']){ echo "selected"; } ?>>
<?php echo $resultCategory['category_name']; ?>
</option>
<?php
}
?>
</select>
</td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2" align="center"><input id="submit" type="submit" value="บันทึก" />
</tr>
<tr>
<td colspan="2"> </td>
</tr>
</table>
</form>
<br>
<?php
if($_POST){
echo "<p align='center'>แก้ไขข้อมูลเสร็จสิ้น</p>";
้header("refresh:2; url=main.php");
}
?>
<br><br>
</td>
</tr>
</table>
</body>
</html>
|
|
|
|
|
Date :
2013-08-09 11:18:08 |
By :
กุมภกรรณ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขออภัยนะครับ เมื่อกี้ลืมล็อคอิน
|
|
|
|
|
Date :
2013-08-09 11:19:32 |
By :
mrgunkung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพราะว่า mysql_fetch_array() เอา $result มาทำงานไม่ได้
ลองเช็คดูว่า $result มีค่าหรือไม่
จะเช็คเป้น mysql_num_rows หรือ เช็ค !=null
ก็ได้ทั้งนั้น
|
|
|
|
|
Date :
2013-08-09 11:26:06 |
By :
RootElement@KMUTNB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือ เสริมอีกนิดนะครับ
รอบแรก แสดงผลได้ไม่มีปัญหา แต่พอกด บึนทึกข้อมูล แล้วมันมีปัญหาเออเร่อตรงที่แสดงข้อมูล(ที่แสดงได้ในตอนแรก)
ต้องแก้อย่างไรอ่ะครับ
|
|
|
|
|
Date :
2013-08-09 13:02:10 |
By :
mrgunkung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ต้องไปดูว่าใน <form> ส่งมาแบบไหน เป็น POST หรือ GET
ตอนรับได้รับมาถูกรึป่าว
- <form method="post" รับค่าโดยใช้ $_POST["ชื่อตัวแปร"]
- <form method="get" รับค่าโดยใช้ $_GET["ชื่อตัวแปร"]
แล้วการจะส่งค่าต้องอยู่ภายใน
<form>
....
</form>
่ค่าที่จะส่งไปคือที่เขียนไว้ใน
<input value="ค่าที่ส่งไป"> หรือ <option value="ค่าที่ส่งไป"> หรือรูปแบบอื่นๆ
|
|
|
|
|
Date :
2013-08-09 13:16:52 |
By :
RootElement@KMUTNB |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณมากครับ
ผมยอมแพ้ละ ให้บันทึกข้อมูลแล้วเปลี่ยนไปโชว์หน้าอื่นแทน หุหุ
|
|
|
|
|
Date :
2013-08-09 13:35:06 |
By :
mrgunkung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|