اذهب إلى المحتوى

السؤال

نشر

سلام عليكم

ساعدوني فضلا في ايجاد الخطأ 

انا بحاول اضيف بند لقاعدة البيانات باستخدام ajax  و بياناتي كالتالي

كود ال FORM  اهو 

                    <div class="container">

                        <div class="row text-center">

                            <div class="main-card col-12 mb-3 m-auto card">

                                <div class="card-body">

                                    <h3 class="card-title">إضافة بند توريد</h3>

                                    <form class="needs-validation" novalidate>

                                        <div class="form-row">

                                            <div class="col">

                                                <label>إسم البند</label>

                                                <div class="input-group">

                                                    <div class="input-group-prepend">

                                                        <span class="input-group-text"><i class="pe-7s-plus"></i></span>

                                                    </div>

                                                    <input type="text" class="form-control stitch-name" placeholder="إسم بند التوريد" required>

                                                    <div class="invalid-feedback">

                                                      إسم البند مطلوب

                                                    </div>

                                                </div>

                                            </div>

                                        </div>


                                        <div class="form-row">

                                            <button class="btn btn-primary center-submit upload-stitch" type="button">تأكيد</button>

                                        </div>

                                    </form>

                                </div>

                            </div>

                        </div>

                    </div>

و السكربت اهو

$('.upload-stitch').on('click', function() {

            $(this).attr("disabled", "disabled");

            //var file_data = $(".stitch-image").prop('files')[0];

            var name = $(".stitch-name").val();

            var form_data = new FormData();

            //form_data.append('image', file_data);

            form_data.append('name', name);

            $.ajax({

                url: 'modules/suppliers/add_item.php', // point to server-side PHP script 

                dataType: 'text', // what to expect back from the PHP script, if anything

                cache: false,

                contentType: false,

                processData: false,

                data: form_data,

                type: 'post',

                success: function(data) {

                                   if (data == "done") {

                                        Swal.fire({

                                            icon: 'success',

                                            title: 'تم اضافة البند',

                                            confirmButtonText: 'حسنا',

                                            showCloseButton: true

                                        }).then((result) => {

                                            if (result.isConfirmed) {

                                                location.reload();

                                            }

                                        })

                                    } else {

                                        Swal.fire({

                                            icon: 'error',

                                            title: 'غلط يا سيدي',

                                            confirmButtonText: 'حسنا',

                                            showCloseButton: true

                                        });

                                        console.log(data);

                                    }



                }

            });

        });

و ده ملف ال php لتنفيذ الامر

<?php

include("../includes/db.php");



$name = $_POST['name'];


$result = $conn->query("INSERT INTO supplying_items(name) VALUES('$name',) ");



if ($result) {

    echo "done";

} else {

    echo ("error". $conn -> error);

}

 

مش راضي يقبل الاضافة نهائي ، ايه الغلطة بتاعتي ؟

Recommended Posts

  • 0
نشر

شكرا لكم ايها الاساتذة الكرام

تم حل المشكلة بالتعديل التالي على ملف التنفيذ

<?php
include("../../includes/db.php");

	$name=$_POST['name'];
	$sql = "INSERT INTO `supplying_items`(`name`) VALUES ('$name')";
	if (mysqli_query($conn, $sql)) {
		
	echo "done";
	} 
	else {
		 echo ("error". $conn -> error);
	}
	mysqli_close($conn);
?>

 

  • 0
نشر

لم أجد خطأ في جافاسكربت أو HTML أرجو تجريب تعديل استعلام SQL:

$result = $conn->query("INSERT INTO supplying_items(name) VALUES($name)");

بوجود الاقتباس الفردي حول المتغير name$ لن يتم تعويض قيمته الفعلية بل سيتم وضع قيمة نص فعلية كـ name$ 

$name = "wael";

echo '$name'; => $name

echo "$name"; => wael

أحيانا يلزمنا في SQL بتحديد اسم الجدول والأعمدة باستخدام back ticks  (`) حرف ذ:

 

$sql = "INSERT INTO `supplying_items`(`name`) VALUES ($name)";

 

  • 0
نشر

يُمكنك دائما تتبع طلبات ajax من خلال قسم Network في أدوات المطورين للمتصفح لمعرفة نتيجة الطلب و معرفة سبب المُشكلة.

أعتقد أن لديك مُشكلة في كتابة الإستعلام هل يُمكنك تغيير السطر:

بتاريخ 1 ساعة قال محمد المصري5:

$result = $conn->query("INSERT INTO supplying_items(name) VALUES('$name',) ");

إلى التالي 

$result = $conn->query("INSERT INTO supplying_items (name) VALUES ($name)");

كما أنصحك بالإطلاع على: parameterized prepared statements للحماية من ثغرة SQL injection

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...