สอบถาม การดึงภาพจากฐานข้อมูลเพื่อแก้ไขในหน้าฟร์อม

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา สอบถาม การดึงภาพจากฐานข้อมูลเพื่อแก้ไขในหน้าฟร์อม

สอบถาม การดึงภาพจากฐานข้อมูลเพื่อแก้ไขในหน้าฟร์อม
 
  <?php
              while($row = mysqli_fetch_array($result)) {
                $image = $row['image_content'];
                $images = $row['image_id'];
                $article_id = $row['article_id'];
                $topic = $row['topic'];
                $article_text = $row['article_text'];
                $writer = $row['writer'];


              ?>

              <form id="new-article" method="post" enctype="multipart/form-data">
                <div class="row">
                  <div class="col-md-12">
                    <div class="form-group">
                    <label class="control-label text-semibold">รูปหัวบทความ:</label>

                    <input type="hidden" name="MAX_FILE_SIZE" value="512000">
                    <input type="file" name="file" id="file" value="<?php $images ?>" class="file-input" data-show-upload="false" data-show-caption="true" data-show-preview="true" accept="image/*" >
                    <?php
                    echo "<img src='data:image/jpeg;base64,".base64_encode($image)."' class='img-responsive'  width='500px'  />";
?>

ผมสามารถดึงภาพมาได้แต่ถ้าผมไม่เลือกภาพใหม่ แล้วกดเซิฟไป เกิดไม่มีภาพครับ ต้องทำยังไงครับ อยากให้เวลาเราไม่เลือกภาพก็ส่งค่าตัวเดิมกลับไปอัปเดท 


หน้าฟรอมอัปเดท


 



if(isset($_GET['u'])):
     if(isset($_POST['bts'])):

$sql="SELECT * FROM  image where image_id= '$image_id' ";


  $image_id = "";
  if(is_uploaded_file($_FILES['file']['tmp_name']))  {
    if($_FILES['file']['error'] == 0) {
      include "lib/IMager/imager.php";
      $img = image_upload('file');
      $img = image_to_jpg($img);
      $img = image_resize_max($img, 600, 300); //ให้ภาพกว้างไม่เกิน 600px สูงไม่เกิน 300px
      $f = image_store_db($img, "image/jpeg");

        $sql = "REPLACE INTO image VALUES('$image_id', '$f')";
      mysqli_query($mysqli, $sql);
      $image_id = mysqli_insert_id($mysqli);
    }
  }

  $t = $_POST['topic'];
  $c = $_POST['content'];
  $w = $_POST['writer'];
  $article_id = $_POST['article_id'];


$sql = "REPLACE INTO article VALUES('$article_id', '$t', '$c', '$w', NOW(), 0, '$image_id')";
  if(@mysqli_query($mysqli, $sql)) {
      $msg = "<div class='alert alert-success'>
      <span class='glyphicon glyphicon-info-sign'></span> &nbsp;ประกาศข่าวสารเรียบร้อยแล้ว<p/>
                            ระบบ'จะนำคุณกำลับไปยังหน้าล็อคอินในอีก 5 วินาที.</p>
     </div>";

     header ("refresh:5; url=index.php");

  }
  else {
    echo '<h3 class="waringing">เกิดข้อผิดพลาดในการบันทึกข้อมูล กรุณาลองใหม่</h3>';

  }
          endif;
     endif;

/*

    $res = $mysqli->query("SELECT * FROM article WHERE article_id =".$_GET['u']);
     $row = $res->fetch_assoc();*/

   //ภาพดีฟอลต์ กรณีไม่ได้กำหนดรูปภาพเอาไว้


   echo $sql = "SELECT article.*, image.image_content
       FROM article LEFT JOIN image
       on article.image_id = image.image_id
       WHERE article_id =".$_GET['u'];
       $result = $mysqli->query($sql);
?>
 


Awordmart2 03-07-2016 23:14:21

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
  ไม่แน่ใจ เป็นกับคำสั่ง sql replace into หรือ่ป่าว
ปกตใช้แต่ INSERT INTO กับ UPDATE เงื่อยไขใช้แค่เทียบว่า ถ้ามีข้อมูลใหม่
ก็อัพเดทฟิลด์ที่ต้องการ 


ninenik 04-07-2016
 ความคิดเห็นที่ 2
ตอนนี้ผมทำคือ เมื่อผมเลือกรูปใหม่ รุปก็จะไปทับแทนที่รุปเดิมใน mysql blob แต่ผมติดปัญหาที่ต้อง เมื่อผมไมไ่ด้เลือกรูป แล้วกดบันทึก แทนที่มันจะจดจำข้อมูลเดิมกลับไป มันกลับไม่จดจำข้อมูลอะไรเลย รุปเดิมก็หายไป รูปใหม่ก็ไมไ่ด้แทนที่  ครับ


awordmart2 05-07-2016 00:14






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ