Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ผมมีปัญหาในการ update sql ครับ แทบจะก็อปวางจากตัวเดิมแต่ยังขึ้น error วอนผู้รู้ช่วยทีครับ



 

ผมมีปัญหาในการ update sql ครับ แทบจะก็อปวางจากตัวเดิมแต่ยังขึ้น error วอนผู้รู้ช่วยทีครับ

 



Topic : 131305



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์




สวัสดีครับ ผม update ข้อมูลในตารางไม่ได้ ขึ้น error ว่า
Notice: Undefined index: location_image_info in C:\xampp\htdocs\web2\editlocationmemberinfosaveimage.php on line 43
ในขณะที่อีกไฟล์นึงผมอัพเดทได้ปกติ แทบจะก็อปวางแล้วแก้แค่บางส่วนด้วยซ้ำ แต่ก็ยัง error ไม่รู้ว่าเป็นเพราะอะไรจริง ๆ ครับ
วอนผู้รู้ช่วยผมที
โค้ดที่ 1 อัพเดทได้ปกติ
code 1 บางส่วน
$id = $_GET['id'];

$loc_name = $_POST['name'];
$loc_type = $_POST['type'];
$loc_info = $_POST['info'];
$loc_add = $_POST['address'];
$loc_la = $_POST['latitude'];
$loc_long = $_POST['longitude'];
$loc_fee = $_POST['fee'];
$loc_rou = $_POST['route'];
$loc_land = $_POST['landmark'];

$update = "UPDATE tbllocation SET location_name = '$loc_name', location_type = '$loc_type',location_info = '$loc_info', location_address = '$loc_add'
                    ,location_latitude = '$loc_la', location_longitude = '$loc_long', location_fee = '$loc_fee', location_route = '$loc_rou'
                    ,location_landmark = '$loc_land' WHERE location_id = '$id' ";
                    $update_query = mysqli_query($con,$update);

                    if ($update_query){
                      echo "<script type='text/javascript'>";
                      //echo "alert('แก้ไขบทความสำเร็จ');";
                      echo "window.location = 'locationmemberinfo.php'";
                      echo "</script>";
                    }

โค้ดที่ 2 ตัวโค้ดที่เกิด error
code 2 บางส่วน
$loc_id = $_GET['loc_img_id'];
$loc_name = $_POST['location_image_info'];

    $update = "UPDATE tbllocation_image SET location_image_info = '$loc_name' WHERE location_image_id = '$loc_id' ";
    $update_query = mysqli_query($con,$update);

                    if ($update_query){
                      echo "<script type='text/javascript'>";
                      //echo "window.location = href='javascript:history.back(1);' ";
                      echo "</script>";
                    }

ภาพที่ 3 ข้อความ error
error_info
Notice: Undefined index: location_image_info in C:\xampp\htdocs\web2\editlocationmemberinfosaveimage.php on line 43
**ในที่นี้คือ บรรทัดที่ 2



Tag : PHP, MySQL, HTML, CSS, HTML5









ประวัติการแก้ไข
2018-06-19 05:14:18
2018-06-19 05:16:50
2018-06-19 14:03:48
2018-06-19 14:10:24
2018-06-19 14:10:39
2018-06-19 14:11:39
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-06-19 05:12:50 By : pangponpaper View : 757 Reply : 10
 

 

No. 1



โพสกระทู้ ( 421 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

เอาเป็นแบบ CODE มาดีกว่าครับ
ถ้าสแนปเผื่อมีคนเขาเอา CODE ไปทดสอบ
Code (PHP)
<?php
   echo 'tag PHP';
?>









ประวัติการแก้ไข
2018-06-19 08:44:44
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 08:44:10 By : nobetaking
 


 

No. 2



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ปกติเอารูปภาพมานี้ผมจะไม่ตอบ อันนี้เห็นว่าไม่ต้องเอาโค๊ดมาใช้

print_r($_POST); เช็ค request ก่อนว่ามาครบไหม
ตัวส่งมันส่งมาไม่ครบไม่มีตัวแปรชื่อ ที่error แจ้งมา
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 09:28:30 By : Chaidhanan
 

 

No. 3



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์


กราบขออภัยครับที่แคปภาพมาลงแทนโค้ด ผมทำการแก้ไขแล้ว

// ตอบคุณ Chaidhanan

print_r($loc_name);


อย่างนี้ถูกต้องไหมครับ พอดีมือใหม่มาก ๆ ผมใส่ไว้ข้างล่างตัว $loc_name = $_POST['location_image_info']; ในโค้ดที่ 2 อย่างนี้
$loc_name = $_POST['location_image_info'];
print_r($loc_name);

ไม่แน่ใจถูกต้องหรือเปล่า ส่วน error ยังขึ้นตัวเดิมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 14:08:59 By : pangponpaper
 


 

No. 4



โพสกระทู้ ( 4,756 )
บทความ ( 8 )



สถานะออฟไลน์


undefined index คือไม่มีสารบัญระบุอยู่
กรณี array ก็คือไม่มี key นั่นแหละ

$_POST['location_image_info']; เรียกใช้โต้งๆแบบนี้ถ้าไม่มีฟอร์มส่งค่านี้มามันก็เป็นอย่างที่เห็น
วิธีแก้ undefined index สำหรับ array คือใช้ isset, array_key_exists
isset จะเป็น false ถ้าค่าเป็น null ดังนั้นถ้าจะเช็คค่าที่เป็น null ด้วยให้ใช้อย่างหลัง แต่โดยทั่วไปก็ใช้ isset

ตัวอย่าง

Code (PHP)
$loc_name = (isset($_POST['location_image_info']) ? $_POST['location_image_info'] : '');


คือเช็คก่อนว่ามีกำหนดมายัง? ถ้าไม่มีก็เป็น empty string ไป ''
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 14:13:14 By : mr.v
 


 

No. 5



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณท่าน mr.v สำหรับคำตอบนะครับ
ผมลองทดสอบดูแล้ว กลายเป็นว่า ค่าที่ update เข้าไปเป็นค่าว่างแทน อาจเป็นเพราะว่าไม่ได้อยู่ใต้ฟอร์มที่ต้องส่งค่าไปหรือเปล่า
ผมต้องการอัพเดทข้อมูลที่ตรงกับ location_image_id ที่ eccho ออกมาเลย

ผมอาจจะไม่เข้าใจอะไร หรือสื่ออะไรผิด ขออนุญาตอธิบายเพิ่มเติม
ผมต้องการให้อัพเดทข้อมูลตามที่กรอกลงใน textarea ดังนี้
(เผื่อไม่เห็นภาพ ขอก็อปมาทั้ง while)
<?php
    while($showimg = mysqli_fetch_array($locationmemberinfo_showimg)){
      # code...
    ?>
    <div class="col-lg-6">
      <label for="usr">ภาพที่ <?php echo $i_no ?>:</label>
      <input type='file' name="location_image_file" onchange="document.getElementById('loc_img<?php echo $i_no ?>').src = window.URL.createObjectURL(this.files[0])">
      <img id="loc_img<?php echo $i_no ?>" src="<?php echo $showimg["location_image_file"]; ?>" height="200">
      <label for="usr">คำอธิบายภาพที่ <?php echo $i_no ?>:</label>

      <textarea type="text" class="form-control" rows="5" name="location_image_info" id="location_image_info" ><?php echo $showimg["location_image_info"]; ?></textarea>

      <td scope="row"><button type="button" class="btn btn-primary" onClick="window.location='editlocationmemberinfosaveimage.php?loc_img_id=<?php echo $showimg["location_image_id"]; ?>'">แก้ไข</button>
    </div>
    <?php
    $i_no++;
    }
     ?>


ถ้าหากว่าผมแก้โค้ด update เป็น อย่างนี้ถูกต้องไหมครับ ซึ่งมันก็ยัง error อยู่ดี
$update = "UPDATE tbllocation_image SET location_image_info = '".$_POST['location_image_info']."' WHERE location_image_id = '$loc_id' ";



ประวัติการแก้ไข
2018-06-19 14:36:37
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 14:32:23 By : pangponpaper
 


 

No. 6



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์


ตอนนี้ทำได้แล้วครับ นำลูป while ไปไว้ภายใต้ form เพื่อทำการส่งค่าไปอีกที ตามที่คุณ mr.v บอกไว้
ความรู้ความสามารถผมยังน้อย ทำให้ไม่ค่อยเข้าใจเท่าไร ขอบคุณทุกท่านมากครับผม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 15:58:17 By : pangponpaper
 


 

No. 7



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


ตัวอย่างคือ print_r($_POST); เพื่อที่จะได้รู้ว่ามีอะไรส่งมาบ้าง

$_POST['location_image_info'] มันไม่มี index "location_image_info" นี้
เอาโค๊ดทดสอบไปเรียกใช้หลังคำสั่งที่เออเร่อร์ ก็จะได้เออเร่อร์ แบบเดิมสิครับ

ถ้าใช้การตรวจสอบที่ถูกต้อง ก็จะพบจุดผิดผลาดได้เร็๋ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 16:54:11 By : Chaidhanan
 


 

No. 8



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 7 เขียนโดย : Chaidhanan เมื่อวันที่ 2018-06-19 16:54:11
รายละเอียดของการตอบ ::
ขอบคุณสำหรับคำแนะนำครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 17:06:04 By : pangponpaper
 


 

No. 9



โพสกระทู้ ( 8 )
บทความ ( 0 )



สถานะออฟไลน์


ขออณุญาตสอบถามเพิ่มเติมครับ
อัพเดท info ได้แล้ว แต่ตอนนี้ติดปัญหา update รูปภาพครับ error ดังนี้
Array ( [location_image_file] => 10.jpg [location_image_info] => 1 )
Notice: Undefined index: location_image_file in C:\xampp\htdocs\web2\editlocationmemberinfosaveimage.php on line 48 ถ้าตาม code ข้างล่างคือบรรทัดที่ 8
มีการส่งค่ามาครบทั้ง 2 input ทำไมไม่ได้เหรอครับ กำลังทำตามตัวอย่างนี้
https://www.thaicreate.com/community/php-upload-file-mysql-edit-form.html

Code (PHP)
<?php

print_r($_POST);
    $update = "UPDATE tbllocation_image SET location_image_info = '".$_POST['location_image_info']."' WHERE location_image_id = '$loc_id' ";

                    $update_query = mysqli_query($con,$update);

                    if($_FILES["location_image_file"]["name"] != "")
                    {
                      //$target = "img/".basename($_FILES['location_image_file']['name']);
                      //$image = $_FILES['location_image_file']['name'];
                      if(move_uploaded_file($_FILES["location_image_file"]["tmp_name"],"img/".$_FILES["location_image_file"]["name"]))
                      {
                          $sql_update = "UPDATE tbllocation_image SET location_image_file = '".$_FILES['location_image_file']['name']."' WHERE location_image_id = '$loc_id'";
                          $query = mysqli_query($con,$sql_update);
                      }
                    }

                    if ($update_query){
                      echo "<script type='text/javascript'>";
                      //echo "window.location = href='javascript:history.back(1);' ";
                      echo "</script>";
                    }



      ?>



ประวัติการแก้ไข
2018-06-19 18:07:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 18:06:19 By : pangponpaper
 


 

No. 10



โพสกระทู้ ( 9,586 )
บทความ ( 2 )



สถานะออฟไลน์


น่าจะเหมือนกันนั่นแหล่ะครับ ย้าย <input type=file > ไปไว้ใน form หรือ ตรวจเช็คชื่อตัวแปร ว่าถูกต้องไหม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-06-19 18:56:01 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ผมมีปัญหาในการ update sql ครับ แทบจะก็อปวางจากตัวเดิมแต่ยังขึ้น error วอนผู้รู้ช่วยทีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่