Paradox
4 ماه پیش توسط Paradox مطرح شد
2 پاسخ

ویرایش اطلاعات با php و ajax

سلام وقت بخیر
من از طریق php و ajax بخش دسته بندی محصولات رو توی دیتابیس ذخیره و حذف کردم ولی برای برای ویرایش به مشکل خوردم
اولین باره دارم انجام میدم با ایجکس نیاز به راهنمایی دارم ، مشکلی که دارم دیتا توی دیتابیس اپدیت نمیشه
وردامپ میگیرم دیتارو نمایش میده ولی ذخیره نمیشه

            <a data-toggle="modal" data-target="#editCategoryModal" id="editcategory" class="btn btn-primary text-light prepareEditCategory">ویرایش</a>

فرم ویرایش

  <div id="editCategoryModal" class="modal fade" role="dialog">
      <div class="modal-dialog">
        <!-- Modal content-->
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">&times;</button>
            <h4 class="modal-title">ویرایش اطلاعات</h4>
          </div>
          <div class="modal-body">
            <div id="resultEditCategory"></div>
            <form method="post" id="frmEditCategory">
              <input type="hidden" id="editCategoryId" name="id" value="">
              <div class="form-group">
                <label>نام دسته بندی:</label>
                <input type="text" class="form-control" name="title" id="editCategoryTitle">
              </div>
              <div class="form-group">
              <button class="col-lg-12 btn btn-primary" id="editCategoryButton">ویرایش دسته بندی</button>
              </div>
            </form>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">خیر</button>
          </div>
        </div>
      </div>
    </div>

دریافت اطلاعات

<?php
require_once("../partial/SessionAdmin.php");
require_once("../../config/mode.php");
require_once("../../config/dbconfig.php");

if ($_POST) {
  $id = $_POST['id'];

  $stmt = $connect->prepare("SELECT * FROM category WHERE id = ?");
  $stmt->bind_param("i", $id);
  $stmt->execute();
  $result = $stmt->get_result();
  $category = $result->fetch_assoc();

  echo json_encode($category); 
}
?>

جاوااسکریپت

function showListCategory() {
    $.ajax({
        url: "phpscript/listcategory.php",
        type: "POST",
        data: "",
        success: function (response) {
            $("#resultshowinfocategory").html(response);
            setupDeleteCategory();
            setupEditCategory();
        }
    });
}

function setupDeleteCategory() {
    $(".prepareDeleteCategory").click(function () {
        let id = $(this).attr("id");
        $('#deletCategoryModal').modal('show');
        $("#btndeletecategory").click(function () {
            $.ajax({
                url: "phpscript/deletecategory.php",
                type: "POST",
                data: { id: id },
                success: function (response) {
                    $('#deletCategoryModal').modal('hide');
                    showListCategory();
                }
            });
        });
    });
}

function setupEditCategory() {

    $(".prepareEditCategory").click(function () {
        let id = $(this).attr("id");

        $.ajax({
            url: "phpscript/getcategory.php",
            type: "POST",
            data: { id: id },
            success: function (data) {
                var category = JSON.parse(data);
                $("#editCategoryId").val(category.id);
                $("#editCategoryTitle").val(category.title);
                $('#editCategoryModal').modal('show');
            }
        });

        $('#editCategoryModal').on('hidden.bs.modal', function () {
            $("#frmEditCategory")[0].reset();
        });

        $("#frmEditCategory").off().submit(function (evt) {
            evt.preventDefault();
            var id = $("#editCategoryId").val();
            var title = $("#editCategoryTitle").val();
            $.ajax({
                url: "phpscript/editcategory.php",
                type: "POST",
                data: { id: id, title: title },
                success: function (response) {
                    $('#editCategoryModal').modal('hide');
                    $("#resultEditCategory").html(response);
                    showListCategory();
                }
            });
        });
    });
}

اپدیت

<?php
require_once("../partial/SessionAdmin.php");
require_once("../../config/mode.php");
require_once("../../config/dbconfig.php");

if ($_POST) {
    $id = $_POST['id'];
    $title = $_POST['title'];
    // var_dump($_POST);
    $command = "UPDATE category SET title=? WHERE id=?";
    $stmt = $connect->prepare($command);
    $stmt->bind_param("si", $title, $id);

    if ($stmt->execute()) {
        echo "دسته بندی با موفقیت ویرایش شد.";
    } else {
        echo "مشکلی در ویرایش دسته بندی به وجود آمد.";
    }
}

ثبت پرسش جدید
Paradox
تخصص : در حال یادگیری
@paradox 4 ماه پیش مطرح شد
0

یعنی هیچکس بلد نیست ؟؟


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 4 ماه پیش مطرح شد
0

سلام دوست عزیز
@paradox

به لینک زیر یه سری بزنید و طبق موارد پیش برید

https://sabzdanesh.com/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-ajax-%D8%AF%D8%B1-php/

اما مراحل به این صورت هست ک المنت یا دکمه مد نظر رو انتخاب میکنید
براش یه ایونت تعریف میکنید ک وقتی کلیک شد چه اتفاقاتی بیوفته و ....
مقدار رو از فیلد های مورد نظر میگیرید
و در قالب json - serialize یا آبجکت میفرستید به سمت سرور
و از اون ور هندل میکنید
تمامی مراحل رو هم از بخش کنسول مرور گر هم میتونید ببینید و خطایابی کنید

امیدوارم مفید بوده باشه
موفق باشید.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام