|
|
|
กด edit post แล้วไม่มีการอัพเดตข้อมูลใน edit แก้ไขอย่างไรดีค่ะ |
|
|
|
|
|
|
|
ขอสอบถามผู้รู้หน่อยนะคะ พอดี กดปุ่มedit แล้วลองแก้ข้อมูล มันไม่แก้ไขข้อมูลให้ค่ะ
Code (PHP)
<?php
require_once "connect.php";
session_start();
if (isset($_GET['edit'])) {
$edit_id = $_GET['edit'];
$edit_query = "SELECT * FROM posts WHERE post_id = '$edit_id'";
$run_edit = mysqli_query($conn, $edit_query);
while ($edit_row = mysqli_fetch_array($run_edit)) {
$post_id = $edit_row['post_id'];
$post_title = $edit_row['post_title'];
$post_author = $edit_row['post_author'];
$post_date = date('y-m-d');
$post_keywords = $edit_row['post_keywords'];
$post_image = $edit_row['post_image'];
$post_content = $edit_row['post_content'];
}
}
if (isset($_POST['submit'])) {
$update_id = $_GFET['edit_form'];
$post_title = $_POST['title'];
$post_date = date('y-m-d');
$post_author = $_POST['author'];
$post_keywords = $_POST['keywords'];
$post_content = $_POST['content'];
$post_image = $_FILES['image']['name'];
$image_tmp = $_FILES['image']['temp_name'];
move_uploaded_file($image_tem, "../img/$post_image");
$update_query = "UPDATE posts SET post_title = '$post_title', post_date = '$post_date', post_author = '$post_author',
post_image = '$post_image', post_keywords = '$post_keywords', post_content = '$post_content' WHERE post_id = '$update_id'";
if (mysqli_query($conn, $update_query)) {
echo "<script>alert('Post has been updated');</script>";
header("location: view_posts.php");
} else {
echo "<script>alert('Something wrong!');</script>";
}
}
?>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>View Post Page</title>
<link rel="stylesheet" href="css/adminstyle.css">
</head>
<body>
<header>
<div class="container">
<h1>Welcome to Admin Page Miss.</h1>
</div>
</header>
<section class="content">
<div class="content_grid">
<div class="sidebar">
<h1>Welcome : </h1>
<h3><a href="index.php">Home</a></h3>
<h3><a href="view_posts.php">View Posts</a></h3>
<h3><a href="insert_post.php">Insert Post</a></h3>
<h3><a href="logout.php">Logout</a></h3>
</div>
<div class="showinfo" >
<h1>Edit Post</h1>
<form action="edit_post.php?edit_form=<?php echo $post_id; ?>" method="post" enctype="multipart/form-data">
<table width="100%" align="center" border="1">
<tr>
<td align="center" colspan="6"><h1>Edit Post</h1></td>
</tr>
<tr>
<td>Post Title</td>
<td><input type="text" name="title" size="50" value="<?php echo $post_title; ?>"></td>
</tr>
<tr>
<td>Post Author</td>
<td><input type="text" name="author" size="50" value="<?php echo $post_author; ?>"></td>
</tr>
<tr>
<td>Post Keywords</td>
<td><input type="text" name="keywords" size="50" value="<?php echo $post_keywords; ?>"></td>
</tr>
<tr>
<td>Post Image</td>
<td><input type="file" name="image" size="50"><img width="150" height="150" src="../img/<?php echo $post_image; ?>" alt=""></td>
</tr>
<tr>
<td>Post Content</td>
<td><textarea name="content" cols="50" rows="15"><?php echo $post_content; ?></textarea></td>
</tr>
<tr>
<td align="center" colspan="6"><input type="submit" name="submit" value="Update Now"></td>
</tr>
</table>
</form>
<img width="640" height="360" src="img/admin.jpg" alt="">
</div>
</div>
</section>
</body>
</html>
Tag : PHP, MySQL, HTML, HTML5
|
ประวัติการแก้ไข 2019-08-09 11:20:32
|
|
|
|
|
Date :
2019-08-09 11:02:22 |
By :
2379645052123537 |
View :
683 |
Reply :
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$update_id = $_GFET['edit_form'];
|
|
|
|
|
Date :
2019-08-09 11:25:35 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2019-08-09 11:27:25 |
By :
Manussawin |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เปิด error message ไว้ด้วยจะช่วยได้เยอะนะครับ
Code (PHP)
<?php
error_reporting(-1);
ini_set('display_errors', 1);
มันไม่อัพเดทเพราะมันเออเร่อร์ครับ
027.$update_id = $_GFET['edit_form'];
สีแดงข้างบน คำสั่งนี้ไม่มีครับ
034.$image_tmp = $_FILES['image']['temp_name'];
035.
036.move_uploaded_file($image_tem, "../img/$post_image");
สีแดงมันควรเหมือนกันไหม
และวิธีเขียน ถ้าต้องใช้ ตัวแปร โกลบอล ในการคิวรี่ ให้เปลี่ยนไปใช้ mysqli::prepare ครับ
จะช่วยเรื่อง sql injection ได้ 100% เลย หมดห่วงเรื่องนี้เลยครับ
|
|
|
|
|
Date :
2019-08-09 11:29:01 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำไมใส่ echo แล้วไม่ได้ค่ะ
Code (PHP)
<tr>
<td>Post Title</td>
<td><input type="text" name="title" size="50" value="<?php echo $post_title; ?>"></td>
</tr>
<tr>
<td>Post Author</td>
<td><input type="text" name="author" size="50" value="<?php echo $post_author; ?>"></td>
</tr>
<tr>
<td>Post Keywords</td>
<td><input type="text" name="keywords" size="50" value="<?php echo $post_keywords; ?>"></td>
</tr>
<tr>
<td>Post Image</td>
<td><input type="file" name="image" size="50"><img width="150" height="150" src="../img/<?php echo $post_image; ?>" alt=""></td>
</tr>
<tr>
<td>Post Content</td>
<td><textarea name="content" cols="50" rows="15"><?php echo $post_content; ?></textarea></td>
</tr>
|
|
|
|
|
Date :
2019-08-09 11:51:04 |
By :
2379645052123537 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
กำหนดค่าให้มันด้วยครับ มันไม่ได้ถูกกำหนดค่าในบางกรณี
ตัวอย่าง
Code (PHP)
if (isset($_GET['edit'])) {
$edit_id = $_GET['edit'];
$data = $....
....
}else if (isset($_POST['submit'])) {
$update_id = $_GET['edit_form'];
$data = $.....
....
}else{
$data = $.....
}
ปล. ตอนคิวรี่ ก็ตรวจเช็ค ด้วยครับว่าได้ขอมูลมาไหม
Code (PHP)
$result = $db->query('....') or die ( $db->error );
if($result->num_rows<1){
$data = $.....
}else{
while(.....){
}
}
|
ประวัติการแก้ไข 2019-08-09 12:30:46 2019-08-09 12:31:49 2019-08-09 12:40:29 2019-08-09 12:41:45
|
|
|
|
Date :
2019-08-09 12:26:07 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$data เป็นแค่ตัวอย่าง ชื่อ variable ที่ต้องจัดการ ในทุกเคส เมื่อนำไปใช้ จะได้ไม่มีเออเร่อร์ครับ
ของจริงคือ $post_title ก็ต้องหาดูว่า ช่วงเวลาไหนที่ มันไม่ได้ถูกเซทค่าครับ
Code (PHP)
if (isset($_GET['edit'])) {
$edit_id = $_GET['edit'];
if($result->num_rows <1 ){
$post_title = $....
}else{
while(....){
$post_title = $.....
}
}
}else if (isset($_POST['submit'])) {
$update_id = $_GET['edit_form'];
$post_title= $.....
....
}else{
$post_title= $.....
}
พูดง่ายคือ ต้องดู event ให้ครบกำหนดค่าครบหรือไม่
ส่วน $...... คือแหล่งข้อมูลที่จะนำมาใส่ใส $post_title
|
|
|
|
|
Date :
2019-08-09 13:44:26 |
By :
Chaidhanan |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เอาคำว่า undefined variable มาแปล แปลแล้วจะเข้าใจว่าทำยังไงต่อไป ถ้ายังไม่เข้าใจก็เอาคำว่า php undefined variable ไปหาในเว็บดู
https://www.thaicreate.com/php/forum/091748.html
|
ประวัติการแก้ไข 2019-08-10 00:42:47
|
|
|
|
Date :
2019-08-09 21:49:31 |
By :
mr.v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|