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

محمد المصري12

الأعضاء
  • المساهمات

    276
  • تاريخ الانضمام

  • تاريخ آخر زيارة

كل منشورات العضو محمد المصري12

  1. سلام عليكم عندي مشكلتين مخي وقف عن ايجاد حل لهم الاولى <label>نوع الألياف</label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <select class="form-control fiber-thread" name="fiber-thread"> <option selected disabled value="<?php echo $user['fibersID']; ?> "><?php echo $user['fibersName']; ?> </option> <?php $result = $conn->query("SELECT * FROM fibers"); while ($row = $result->fetch_assoc()) { echo '<option value="' . $row['id'] . '">' . $row['name'] . '</option>'; } ?> </select> دي صفحة ال update و انا حاطط انها يعرضلي نوع الالياف المختار قبل ذلك عادي جدا لما بحب اجي اغير اي حاجة تانية في الملف ، مثلا <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <input type="text" class="form-control num-thread" required="required" name="num-thread" value="<?php echo $user['num']; ?>"> </div> يغير النمرة عادي لكن يرجعلي تاني قيمة حقل نوع الالياف اللي هو موجود اصلا قبل كده و متحدد و مش عاوز اغيره من القايمه ، يرجعهولي صفر في الداتابيز ، بيشيله من الداتابيز خالص يعني عشان اغير النمرة لازم افتح القائمه بتاعه نوع الالياف و اختار حاجة جديدة تتسجل في الداتابيز طيب يا سيدي الكود انا لا اريد ذلك ، طالما لم اقم بتغيير نوع الالياف من القائمة فضلا احتفظ بالاختيار القديم لا تقم بتغييره و قم بتعديل ما قمت به فقط هذه هي المشكلة الأولى المشكلة الثانية <label>صورة</label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <input type="file" class="form-control thread-image" accept="image/*" > </div> نفس مشكلة القائمة ، لو لم اقم بتحديد صورة فالبرنامج لا يتعرف على المتغير image من الاساس و يقوم بحذف الصورة و هذا الخطأ من ال consol Undefined variable: image in <b>C:\xampp\htdocs\gtms\functions\addAccessories.php</b> on line <b>103</b><br /> كيف استطيع اقناع الكود انه اقبل كل التعديلات و ما لم اقم بتعديله فاحتفظ ببياناته السابقة ؟؟ كود jQuery لتمرير البيانات <script>// thread (function() { 'use strict'; window.addEventListener('load', function() { var forms = document.getElementsByClassName('needs-validation-thread'); var validation = Array.prototype.filter.call(forms, function(form) { form.addEventListener('submit', function(event) { // console.log(form.reportValidity()); if (form.checkValidity() === false) { event.preventDefault(); event.stopPropagation(); } else { var form_data = new FormData(); var name = $(".name").val(), fiber = $(".fiber-thread").val(), num = $(".num-thread").val(), color = $(".degree-code[data='thread']").val(), pantone = $(".panton-code[data='thread']").val(), height = $(".height-thread").val(), weight = $(".weight-thread").val(), factory = $(".factory-thread").val(), tprice = $(".tPrice-thread").val(), mprice = $(".mPrice-thread").val(); var file_data = $(".thread-image").prop('files')[0]; form_data.append('type', "updatethread"); form_data.append('id', <?php echo $id; ?>); form_data.append('name', name); form_data.append('fiber', fiber); form_data.append('num', num); form_data.append('color', color); form_data.append('pantone', pantone); form_data.append('height', height); form_data.append('weight', weight); form_data.append('factory', factory); form_data.append('tprice', tprice); form_data.append('mprice', mprice); form_data.append('image', file_data); //console.log(form_data); $.ajax({ url: "functions/addAccessories.php", dataType: 'text', 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); } } }); } form.classList.add('was-validated'); }, false); }); }, false); })(); function added() {} $(".tPrice-thread , .height-thread , .weight-thread , .total-weight").on("keyup", function() { if ($(".moth[value='one']").is(":checked")) { var price = $(".tPrice-thread").val(), height = $(".height-thread").val(); $(".mPrice-thread").val(price / height); }else { var price = $(".tPrice-thread").val(), weight = $(".weight-thread").val(), total = $(".total-weight").val(); var height = (10/weight)*total; $(".height-thread").val(height); $(".mPrice-thread").val(price / height); } }); $(".moth").change(function() { var moth = $(this).val(); if (moth == "one") { $(".one").show(); $(".two").hide(); $(".height-thread").removeAttr("disabled"); } else { $(".one").show(); $(".two").show(); $(".height-thread").attr("disabled","disabled"); } }); $(".factories").change(function() { var factory = $(this).val(); $(".factory-thread").val(factory); document.getElementsByClassName('close-factory')[0].click(); }); </script> كود تعريف المتغيرات و امر update $id = $_POST['id']; $name = $_POST['name']; $fiber = $_POST['fiber']; $num = $_POST['num']; $color = $_POST['color']; $pantone = $_POST['pantone']; $height = $_POST['height']; $weight = $_POST['weight']; $factory = $_POST['factory']; $tprice = $_POST['tprice']; $mprice = $_POST['mprice']; if (isset($_FILES['image']['name'])) { $image = time() . $_FILES['image']['name']; move_uploaded_file( $_FILES["image"]["tmp_name"], "../assets/images/threads/" . $image ); $imageAdds = ",image='".$image."'"; }else { $imageAdds = ""; } $q = "UPDATE `thread` SET `name`='$name',`fiber`='$fiber',`num`='$num',`color`='$color',`pantone`='$pantone',`height`='$height',`weight`='$weight',`factory`='$factory',`tPrice`='$tprice',`mPrice`='$mprice',`image`='$image' WHERE thread.id =".$id.";"; $result = $conn->query($q); if ($result) { echo "done"; } انتظر المساعدة فضلا
  2. شكرا جدا لك استاذنا اول طريقة فكرت بها فعلا ، بس حسيتها غير مجدية لاني مجرد مرفع السكربت عالهوست هاضطر اني اغير المسار تاني كل مرة تاني حل ، لو متوفر قدام حضرتك اي لينك توضيح للفكرة او تتفضل عليا باعطائي مثال اكون ممنون جدا و متشكر جدا لتعبك
  3. سلام عليكم مثلا عندي مجلد اسمه includes جواه ملف اسمه sidebar.php جوه الملف ده كود مثلا <a href="addfabric.php"> الان لما انا باجي استدعي الملف ده من فايل في الروت الرئيسي بيشتغل كويس جدا ، هايفتح عادي جدا لانه شايف ملف sidebar في مجلد includes عادي و شايف ملف addfabric.php في مكانه عادي طيب قمت انا فتحت مجلد تاني اسمه hassob مثلا و جواه ملف اسمه view.php هبرمجة يجيب داتا معينه مش ازمتنا الان لما يعمل تضمين للسايد بار include ("../sidebar.php"); جابه عادي جدا و مفيش مشكلة لكن من الصفحة دي جوا مجلد hassob و حابب مثلا ادوس على ملف addfabric.php اللي هو مكانه اصلا في الروت ما بيقراهوش لانه ببساطة هو بيدور عليه جوا مجلد حسوب و لو غيرت اللينك في ملف sidebar.php بالطريقة دي مثلا <a href="../addfabric.php"> يشتغل من جوا مجلد حسوب زي الفل لانه دور عليه برا المجلد و لاقاه لكن لما اشغل اي ملف من المجلد الرئيسي ما يشتغلش لانه هايروح يدور عليه برا المحلد الرئيسي مش هايلاقيه السؤال ازاي احل المشكلة دي ، اني اعمل الملفات اللازمة لتشغيل كل صفحات الموقع و استدعيها باي شكل مهما فتحت من مجلدات لانه مش منطق ابدا كل ملفات الموقع تبقى جوا المجلد الرئيسي
  4. اشكرك جدا لكن لم ينجح معي الامر انا عندي اكثر من متغير ليس button فقط rope و zippers و tape مثلا كل هذه متغيرات استخدم لها نفس الكود مع تغييره دوما
  5. نعم اتفهم ذلك ، لكن التغيير بهذا الشكل اثر على المراد من الموضوع فليس هناك علاقة بين خصائص الزر و موضوعي و بالتالي لن احصل على المساعدة المطلوبة من الاساتذة الكرام و ربما كتبت للسادة الخبراء لاني ببساطة لا اعلم كيف اصيغ عنوانا مختصرا لما اريد فآثرت دعوة الاساتذة خبراء php لقراءة مشكلتي بالموضوع بشكل اوضح الامر يتعلق بالدوال و ليس بخصائص الزر و لكم خالص التقدير
  6. ليس هذا ما قصدته مطلقا اخي الكريم و عنوان الموضوع تم تغييره بشكل مغاير تماما لما اريد هذا الكود هو استعراض لمحتويات قاعدة بيانات فمثلا عندي جدول اسمه button عرفت محتوياته بالمتغير $button و كذلك جدول capson و عرفت محتوياته كذلك فمتغير button هنا ليس له علاقة نهائيا ب button tag انا اقصد زر من ازرار القميص او التيشيرت او خلافه لو مسجل في جدول button حقل name اي داتا اعرضها لو مش مسجل اكتب لا يوجد افحص جدول كابسون capson لو مسجل في جدول capson حقل name اي داتا اعرضها لو مش مسجل اكتب لا يوجد و هكذا اكرر هذا الامر على كل محتويات قسم الاكسسوارات ما ابحث عنه هو طريقة او دالة استخدمها لتكرار الكود السابق بطريقة اسهل من تكرار كتابته بنفس الطريقة كل مرة مع استبدال المتغير شكرا لك
  7. سلام عليكم انا بدأت افهم اللغة من خلال تطبيق عملي اقوم به لكن توجد بعض الامور التي احب استيضاحها اول بأول عن طريق الأمثلة العملية الان مثلا عندي هذا الكود <option type="button" img="<?php echo $button['image']; ?>" value="<?php echo $button['button_id']; ?>"> كود الزر : <?php echo 'R'.$button['button_id']; ?>-- الإسم الشائع للزر:- <?php if (!empty($button['name'])){ echo $button['name']; } else { echo 'لم يتم تسجيل إسماً شائعا لهذا الزر'; } ?> هذا الكود يتكرر دوما معي لكن الفرق ان المتغير button هو ما يتم استبداله باخر نفس الكود يتكرر بحذافيره لكل المتغير مختلف هل من طريقة بسيطة استدعي بها الكود و اقوم فقط بتبديل اسم المتغير بدلا من تكراره عشرات المرات
  8. ربنا يكرمك فهمت اجابة الجزء الثاني لكن الجزء الاول لم يعمل مع العلم اني تأكدت ان المسار صحيح تماما
  9. سلام عليكم السؤال الأول انا عملت دالة بالشكل ده وظيفتها لما استدعيها في المكان المحدد تعملي include للملفات المطلوبة بدون محتاج كل مرة اكتبها و اكررها function accesoriesFiles(){ include("includes/modal/select_supplier.php"); // فتح قائمة تحديد مورد include("includes/modal/suppliers.php"); // فتح صفحة تسجيل مورد جديد include("includes/modal/color_picker.php"); //فتح صفحة اختيار الالوان include("includes/footer.php"); } لكن لما بستدعي الدالة مفيش حاجة بتحصل ، خطأي فين ؟ السؤال الثاني بشكل واضح و صريح جدا ايه الفرق بين كل من include require include_once require_once عشان اعرف اقرر ايمتى استخدمهم مع خالص الشكر
  10. سلام عليكم و رحمة الله سؤال في مكتبة TCPDF ازاي اخلي الخلية تحتوي النص ما يطلعش براها بالشكل ده ، احطلها خاصية warp text زي الاكسيل كده الكود الخاص بي <?php include("includes/db.php"); include("includes/functions.php"); $title = "التقارير"; $order_id = $_GET['id']; $uSql = "SELECT * FROM orders WHERE id='$order_id'"; if ($result = $conn->query($uSql)){ $order = $result->fetch_assoc() ?? false; $result->free(); } if (!$order){ header("location: ./"); } $date = $order['date'].''; $date = explode(" ",$date); $date = $date[0]; $query = "SELECT username, logo, qr FROM clients WHERE id=".$order['client_id'].""; $user = array(); if ($result = $conn->query($query)){ $user = $result->fetch_assoc() ?? false; $result->free(); } $client = $user['username']; $logo = $user['logo']; $qr = $user['qr']; $query = "SELECT * FROM order_general_info WHERE id=".$order['general_info_id'].""; if ($result = $conn->query($query)){ $info = $result->fetch_assoc() ?? false; $result->free(); } $season = $info['season']; $gender = $info['gender']; $query = "SELECT name FROM models WHERE id=".$info['model_id'].""; $model = array(); if ($result = $conn->query($query)){ $model = $result->fetch_assoc() ?? false; $result->free(); } $model = $model['name']; $query = "SELECT name FROM brands WHERE id=".$info['brand_id'].""; $brand = array(); if ($result = $conn->query($query)){ $brand = $result->fetch_assoc() ?? false; $result->free(); } $brand = $brand['name']; $query = "SELECT m.image, d.name FROM order_model m JOIN design_sub_category d ON m.sub_design_id = d.id WHERE m.order_id=".$order['id'].""; $model_sub = array(); if ($result = $conn->query($query)){ $model_sub = $result->fetch_assoc() ?? false; $result->free(); } $model_image = $model_sub['image']; $model_design_name = $model_sub['name']; $query = "SELECT total_count, sample_size FROM patron WHERE id=".$order['patron_id'].""; $patron = array(); if ($result = $conn->query($query)){ $patron = $result->fetch_assoc() ?? false; $result->free(); } $total_count = $patron['total_count']; $sample_size = $patron['sample_size']; $query = "SELECT DISTINCT title FROM size_table_sizes WHERE size_table_id=".$order['size_table_id'].";"; $size_table = array(); if ($result = $conn->query($query)){ while ($row= $result->fetch_assoc()){ array_push($size_table, $row) ; } $result->free(); } $sizes = ''; foreach ($size_table as $k => $size){ $sizes .= $size['title'] . ' - '; if ($k == count($size_table)-1) $sizes .= $size['title']; } $query = "SELECT DISTINCT cloth_composition_id FROM order_cloths WHERE order_id=".$order['id']." AND usage_id=15 ;"; $cloth_composition_id = array(); if ($result = $conn->query($query)){ $cloth_composition_id = $result->fetch_assoc() ?? false; $result->free(); } $cloth_composition_id = $cloth_composition_id['cloth_composition_id']; $query = "SELECT c.mix, f.name FROM cloths_fabric c JOIN fibers f ON c.fiberT = f.id WHERE c.item=".$cloth_composition_id.";"; $clothes = array(); if ($result = $conn->query($query)){ while ($row= $result->fetch_assoc()){ array_push($clothes, $row) ; } $result->free(); } $clothes_description = ''; foreach ($clothes as $k => $clothe){ if ($k == count($clothes)-1) $clothes_description .= '('.$clothe['name'].': %'. $clothe['mix'] . ') '; else $clothes_description .= '('.$clothe['name'].': %'. $clothe['mix'] . ') - '; } $size_table = array(); $query = "SELECT * FROM size_table WHERE id=".$order['size_table_id'].""; if ($result = $conn->query($query)){ $size_table = $result->fetch_assoc() ?? false; $result->free(); $query = "SELECT * FROM size_table_factors WHERE size_table_id=".$order['size_table_id'].""; $size_table_factors = array(); if ($result = $conn->query($query)){ while ($row= $result->fetch_assoc()){ array_push($size_table_factors, $row) ; } $result->free(); foreach ($size_table_factors as $k => $factor){ $size_table_factors[$k]['sizes'] = array(); $query = "SELECT * FROM size_table_sizes WHERE size_table_factor_id=".$factor['id'].""; if ($result = $conn->query($query)){ while ($row= $result->fetch_assoc()){ array_push($size_table_factors[$k]['sizes'], $row) ; } $result->free(); } } } } //var_dump($size_table_factors); exit; include('includes/tcpdf/tcpdf.php'); class MYPDF extends TCPDF { //Page header public function Header() { } // Page footer public function Footer() { $this->SetY(-15); $this->SetFont('tahoma', 'I', 6); $this->Cell(0, 10, 'Powered By GTMS - الريادة لنظم المعلومات', 0, false, 'C', 0, '', 0, false, 'T', 'M'); } } $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); // set header and footer fonts $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); // set default monospaced font $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); // set margins $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP-22, PDF_MARGIN_RIGHT); $pdf->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf->SetFooterMargin(PDF_MARGIN_FOOTER); // set auto page breaks $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM-15); // set image scale factor $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); // set some language dependent data: $lg = Array(); $lg['a_meta_charset'] = 'UTF-8'; $lg['a_meta_dir'] = 'rtl'; $lg['a_meta_language'] = 'fa'; $lg['w_page'] = 'page'; // set some language-dependent strings (optional) $pdf->setLanguageArray($lg); // --------------------------------------------------------- // use the font $pdf->SetFont('tahoma', '', 11, '', false); // Restore RTL direction $pdf->setRTL(true); // add a page $pdf->AddPage(); $pdf->SetLineStyle( array( 'width' => 1, 'color' => array(0,0,0))); //$pdf->Line(0,0,$pdf->getPageWidth()-15,0); $pdf->Line($pdf->getPageWidth()-15,5,$pdf->getPageWidth()-15,$pdf->getPageHeight()-27); $pdf->Line(5,5,5,$pdf->getPageHeight()-27); /* QR Line */ $pdf->SetFillColor(249, 219, 193); $pdf->Cell(26,10,"رقم العقد",1,0,'C',1); $pdf->Cell(24,10,$order_id,1,0,'C'); $pdf->Cell(26,10,"العميل",1,0,'C',1); $pdf->Cell(32,10,$client,1,0,'C'); $pdf->Cell(26,10,"البراند",1,0,'C',1); $pdf->Cell(26,10,$brand,1,1,'C'); $pdf->SetFillColor(193, 223, 249); $pdf->Cell(26,10,"الموسم",1,0,'C',1); $pdf->Cell(24,10,$season,1,0,'C'); $pdf->Cell(26,10,"التاريخ",1,0,'C',1); $pdf->Cell(32,10,$date,1,0,'C'); $pdf->Cell(26,10,"مقاس العينة",1,0,'C',1); $pdf->Cell(26,10,$sample_size,1,1,'C'); $pdf->SetFillColor(252, 229, 134); $pdf->Cell(26,10,"النوع",1,0,'C',1); $pdf->Cell(24,10,$gender,1,0,'C'); $pdf->Cell(26,10,"وصف المنتج",1,0,'C',1); $pdf->Cell(84,10,$model_design_name,1,1,'C'); $pdf->Image('./assets/images/clients/'.$logo, 5, 5, 30, 30, '', '', 'J', false, 300, 'J', false, false, 1, true, false, false); /* LOGO Line */ $pdf->Cell(26,10,"نوع القماش",1,0,'C',1); $pdf->Cell(134,10,$clothes_description,1,1,'C'); $pdf->Cell(26,10,"المقاسات",1,0,'C',1); $pdf->Cell(134,10,$sizes,1,1,'C'); $pdf->Cell(26,10,"عدد القطع",1,0,'C',1); $pdf->Cell(50,10,$total_count,1,0,'C'); $pdf->Cell(30,10,"الموديل",1,0,'C',1); $pdf->Cell(54,10,$model,1,1,'C'); $pdf->Image($qr, 5, 35, 30, 30, '', '', 'J', false, 300, 'J', false, false, 1, true, false, false); $pdf->Ln(15); // Header Ends $pdf->SetFillColor(193, 223, 249); $pdf->Cell(190, 12, 'جدول المقاسات', 1, 1, 'C', 1, '', 0, false, 'M', 'M'); $pdf->Ln(10); //$this->Image($image_file, 'C', 6, '', '', 'JPG', false, 'C', false, 300, 'C', false, false, 0, false, false, false); $pdf->Image('./assets/images/size_table/'.$size_table['image'], '', 100, $pdf->getPageWidth()/1.2, $pdf->getPageHeight()/2, '', '', 'C', false, 300, 'C', false, false, 1, true, false, false); /* سطر الملاحظات */ $pdf->Ln(); $pdf->SetXY(15, $pdf->getPageHeight()-28); $pdf->SetFont('tahoma', '', 12, '', false); $pdf->Cell(55, 0, 'مسؤول التشغيل الخارجي', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'مسؤول التشغيل الفني', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln=1, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'التوقيع', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'التوقيع', 1, $ln=0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln=1, 'R', 0, '', 0, false, 'J', 'B'); // The Second Page // Header Ends $pdf->SetLineStyle( array( 'width' => 0.5, 'color' => array(0,0,0))); $pdf->SetFont('tahoma', '', 10, '', false); $pdf->SetFillColor(193, 223, 249); $col_width = intval(143 / (count($size_table_factors[0]['sizes'])+1)) ; foreach ($size_table_factors as $f => $factor){ /* The Header */ if ($f%13 == 0 || $f==0){ $pdf->AddPage(); $pdf->SetLineStyle( array( 'width' => 1, 'color' => array(0,0,0))); $pdf->Line($pdf->getPageWidth()-15,5,$pdf->getPageWidth()-15,$pdf->getPageHeight()-27); $pdf->Line(5,5,5,$pdf->getPageHeight()-27); // Header Starts /* QR Line */ $pdf->SetFillColor(249, 219, 193); $pdf->Cell(26,10,"رقم العقد",1,0,'C',1); $pdf->Cell(24,10,$order_id,1,0,'C'); $pdf->Cell(26,10,"العميل",1,0,'C',1); $pdf->Cell(32,10,$client,1,0,'C'); $pdf->Cell(26,10,"البراند",1,0,'C',1); $pdf->Cell(26,10,$brand,1,1,'C'); $pdf->SetFillColor(193, 223, 249); $pdf->Cell(26,10,"الموسم",1,0,'C',1); $pdf->Cell(24,10,$season,1,0,'C'); $pdf->Cell(26,10,"التاريخ",1,0,'C',1); $pdf->Cell(32,10,$date,1,0,'C'); $pdf->Cell(26,10,"مقاس العينة",1,0,'C',1); $pdf->Cell(26,10,$sample_size,1,1,'C'); $pdf->SetFillColor(252, 229, 134); $pdf->Cell(26,10,"النوع",1,0,'C',1); $pdf->Cell(24,10,$gender,1,0,'C'); $pdf->Cell(26,10,"وصف المنتج",1,0,'C',1); $pdf->Cell(84,10,$model_design_name,1,1,'C'); $pdf->Image('./assets/images/clients/'.$logo, 5, 5, 30, 30, '', '', 'J', false, 300, 'J', false, false, 1, true, false, false); /* LOGO Line */ $pdf->Cell(26,10,"نوع القماش",1,0,'C',1); $pdf->Cell(134,10,$clothes_description,1,1,'C'); $pdf->Cell(26,10,"المقاسات",1,0,'C',1); $pdf->Cell(134,10,$sizes,1,1,'C'); $pdf->Cell(26,10,"عدد القطع",1,0,'C',1); $pdf->Cell(50,10,$total_count,1,0,'C'); $pdf->Cell(30,10,"الموديل",1,0,'C',1); $pdf->Cell(54,10,$model,1,1,'C'); $pdf->Image($qr, 5, 35, 30, 30, '', '', 'J', false, 300, 'J', false, false, 1, true, false, false); $pdf->Ln(10); // Header Ends $pdf->SetFillColor(193, 223, 249); $pdf->Cell(47, 10, "عامل القياس", 1, 0, 'C', 1); $pdf->Cell($col_width, 10, "الرمز", 1, 0, 'C', 1); foreach ($size_table_factors[0]['sizes'] as $i => $size){ if ($i == count($size_table_factors[0]['sizes'])-1){ $pdf->Cell($col_width, 10, $size['title'], 1, 1, 'C', 1); } else { $pdf->Cell($col_width, 10, $size['title'], 1, 0, 'C', 1); } } } $pdf->Cell(47, 10, $factor['factor'], 1, 0, 'C', 1); $pdf->Cell($col_width, 10, $factor['code'], 1, 0, 'C', 1); foreach ($factor['sizes'] as $s => $size) { if ($s == count($factor['sizes'])-1){ $pdf->Cell($col_width, 10, $size['value'], 1, 1, 'C', 0); } else { $pdf->Cell($col_width, 10, $size['value'], 1, 0, 'C', 0); } } /* The Footer*/ if ($f%13 == 12 || $f== sizeof($size_table_factors)-1 ) { // Footer $pdf->SetXY(15, $pdf->getPageHeight() - 28); $pdf->SetFont('tahoma', '', 12, '', false); $pdf->Cell(55, 0, 'مسؤول التشغيل الخارجي', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'مسؤول التشغيل الفني', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln = 1, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'التوقيع', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(55, 0, 'التوقيع', 1, $ln = 0, 'R', 0, '', 0, false, 'J', 'B'); $pdf->Cell(40, 0, '', 1, $ln = 1, 'R', 0, '', 0, false, 'J', 'B'); } } //Close and output PDF document $pdf->Output('size_table_report.pdf', 'I'); //============================================================+ // END OF FILE size_table_report.pdf
  11. عظيم جدا تم حلها بهذا الكود <input type="text" class="form-control contact-name" placeholder="الاسم" value="<?php echo $item['name']; ?>" disabled > حين اجد ردودك على اسئلتي اعلم تماما ان المشكلة قد حلت و اني سأتعلم شئيا جديدا شكرا لك جدا
  12. سلام عليكم جدول supplying_items هو جدول جميع بنود التوريد بالنظام ، و عند تسجيل مورد جديد و تحديد اختيار بنود التوريد تظهر لنا قائمة فيها كل بنود التوريد و يتم اختيار احداها فقط لتسجل في جدول supply_item اريد عرض بنود التوريد من جدول supplying_items المخصصة فقط لمورد معين انا في صفحة الاستعراض كتبت استعلام مجمع كالتالي <?php session_start(); if ($_SESSION['permission'] != 1) header("location: login"); include("includes/db.php"); $title = "تعديل مورد"; $id = $_GET['id']; $query = "SELECT * FROM suppliersdb WHERE id =".$id.";"; $query .= "SELECT * FROM suppliers_contacts WHERE supplier_id =".$id.";"; supply_item.item AS SIitem FROM supplying_items , supply_item WHERE supply_item.supplier_id=".$id.";"; $query .= "SELECT * FROM supplying_items INNER JOIN supply_item ON supplying_items.id = supply_item.item WHERE supply_item.supplier_id=".$id."; "; //supplying_items.id الاي دي الخاص ببنود التوريد بشكل عام من جدول بنود التوريد //supplying_items.name اسم بنود التوريد كاملة دون تخصيص - يتم استخراجها من جدول بنود التوريد // supply_item.supplier_id رقم اي دي المورد من جدول بنود التوريد المخصصه و ليس العامة // supply_item.item = رقم بند التوريد في جدول بنورد التوريد المخصصة // supplierdb = قاعدة بيانات الموردين $res = array(); if (mysqli_multi_query($conn, $query)) { $i = 0; do { $res[$i] = array(); if ($result = mysqli_store_result($conn)) { while ($row = mysqli_fetch_assoc($result)) { array_push($res[$i], $row); } mysqli_free_result($result); } $i = $i +1; } while (mysqli_next_result($conn)); } $user = $res[0][0]; $contacts = $res[1]; $item = $res[2]; //var_dump(); //die(); ?> عاوز الان بناء على الاستعلام ده $query .= "SELECT * FROM supplying_items INNER JOIN supply_item ON supplying_items.id = supply_item.item WHERE supply_item.supplier_id=".$id."; "; عاوز اخرج اسم بنود التوريد الخاصة بالمورد الذي يتم استعراض تفاصيله فقط الكود الخاص بجزء بنود التوريد كالتالي <!-- items --> <div class="main-card mb-3 card"> <div class="card-body text-center"> <h3 class="card-title">بنود التوريد</h3> <div class="form-row items"> <div id="itemsCountDiv" class="col-12"> <label class="required">عدد الخامات التي تقوم هذه الشركة بتوريدها </label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <input type="number" min="1" max="24" class="form-control items-count" value="<?php echo count($item); ?>" > <div class="input-group-append"> <button type="button" class="btn btn-success items-count-btn">إضافة</button> </div> </div> </div> <?php if (isset($item) && !empty($item)){ foreach ($item as $item){ ?> <div class="form-row items col"> <div class="col co"> <div class="form-group"> <input type="text" class="form-control contact-name" placeholder="الاسم" value="<?php echo $item['supplying_items.name']; ?>" disabled > </div> <label for="sel1">اختر مورد</label> <div class="input-group"> <select class="form-control items-mo" id="sel1"> <?php $result = $conn->query("SELECT * FROM supplying_items"); while ($row = $result->fetch_assoc()) { echo '<option value="' . $row['id'] . '">' . $row['name'] . '</option>'; } ?> </select> </div> </div> </div> <?php } } ?> </div> </div> </div> الخطأ الذي يظهر لي Undefined index: supplying_items.name ازاي احل الازمة دي فضلا
  13. الله ينور عليكي يا رب دنيا و اخره فعلا الكود ضبط لكن الان بحاجة فقط لضبط الاستعلام عشان اخد النتيجة المضبوطة انا عندي 3 جداول بالشكل السابق و معلوماتهم كالتالي `supplying_items`, /* جدول بنود التوريد بالكامل اسم-رقم */ `supply_item`, /* جدول بنود التوريد الخاصة بالمورد رقم المورد - رقم بند التوريد */ `suppliersdb` /* جدول اسماء الموردين - رقم المورد */ و الاستعلام اللي انا كتبته و اشتغل معايا كالتالي SELECT `supplying_items`.`id` AS idtotal, /* حدد رقم بنود التوريد */ `supplying_items`.`name` AS nametotal, /* اسم بند التوريد */ `supply_item`.`supplier_id` AS sid , /* تحديد رقم المورد من جدول بنود التوريد الخاصة بالموردين فقط*/ `supply_item`.`item` AS sitem, /* رقم بنود التوريد الخاصة بالموردين فقط */ `suppliersdb`.`id` AS suppliersmainID /* رقم الموردين بشكل عام */ FROM `supplying_items`, /* جدول بنود التوريد بالكامل اسم-رقم */ `supply_item`, /* جدول بنود التوريد الخاصة بالمورد رقم المورد - رقم بند التوريد */ `suppliersdb` /* جدول اسماء الموردين - رقم المورد */ WHERE `supply_item`.`item` = `supplying_items`.`id` /* لما رقم بند التوريد الخاص بالمورد يساوي رقم بند التوريد في جدول بنود التوريد */ && `supply_item`.`supplier_id` = `suppliersdb`.`id` /* الشرط الثاني لما اي دي المورد في جدول بنود التوريد يوافق رقمه في جدول الموردين */ && `suppliersdb`.`id` = $id /* تحديد رقم المورد الذي سيتم اظهار بياناته */ هو اشتغل تمام ، بس لو تنصحوني بطريقة افضل لكتابة الاستعلام اكون شاكر جدا لكم
  14. لو تقدر حضرتك تساعدني بامثلة حية اكون شاكر لاني لم اتعامل بها من قبل و انا من ناحيتي هدور برضه تعبتك معايا
  15. طيب لو انا وضعت حقل في جدول التوريدات منا عندي كذا شركة ممكن تختار نفس البند التوريد يعني مثلا عندي بند القماش و جنبه حقل company_id مثلا يتسجل فيه اي دي الشركة و ليكن شركة محمد و الاي دي بتاعها 1 ، يبقى اتسجل عندي في company_id رقم 1 طيب لو شركة احمد اللي الاي دي بتاعها 2 مثلا حبت تختار القماش هايسجلها ازاي بقا في حقل company_id و هو اصلا متسجل فيه قبل كده رقم 1 الخاص بمحمد رقم 2 بقا هايتسجل فين ؟ ثانيا انا غيرت دالة fetch_array و جربت كل شئ من المانيوال نفس النتيجة
  16. طيب هاتعبك معايا معلش نمشي سوا خطوة خطوة سامحني لانها مش ظابطة معايا نهائي لقلة خبرتي الان انا حطيت استعلامين بسيطين كالتالي ، ابدأ بس اجيب بيهم البيانات و بعدين اشوف هافلتر ازاي الاستعلام كالتالي $result = $conn->query("SELECT * FROM suppliersdb ORDER BY id DESC"); $result1 = $conn->query("SELECT * FROM supplying_items "); و الكود كالتالي <table class="table table-primary table-bordered" dir="rtl" id="result"> <thead> <tr align="center"> <th scope="col">الكود</th> <th scope="col">اسم الشركة</th> <th scope="col">بنود التوريد</th> <th scope="col">إعدادات</th> </tr> </thead> <tbody> <?php //الاستعلام $result = $conn->query("SELECT * FROM suppliersdb ORDER BY id DESC"); $result1 = $conn->query("SELECT * FROM supplying_items "); // تعريف المتغيرات while ($row = $result->fetch_assoc()) { //تعريف بنود التوريد $id = $row['id']; //$username= $row['username']; //نهاية تعريف بنود التوريد ?> <tr class="table-light" align="center"> <td scope="row"><?php echo $row['id']; ?></td> <td ><?php echo $row['username']; ?></td> <!-- بنود التوريد --> <td> <select class="form-select form-select-lg mb-3" aria-label="بنود التوريد"> <?php $ro = mysqli_num_rows($result1); while ($ro = $result1->fetch_assoc()) { echo "<option value='". $ro['id'] ."'>" .$ro['name'] ."</option>" ; } ?> </select> </td> <td align="center"> <button username="'. $row['username'].'" oName="'.$row['owner_name'].'" address="'.$row['address'].'" phone="'.$row['phones'].'" whatsapp="'.$row['ownerWhatsapp'].'" email="'.$row['email'].'" website="'.$row['website'].'" class="btn btn-outline-primary m-auto mt-2 more" data-toggle="modal" data-target="#more">عرض المزيد</button> <!-- زر التعديل --> <a href="edit_supplier.php?id=' . $row['id'] . '" target="_blank"> <button type="button" class="btn btn-primary">تعديل</button></a> <!-- زر الحذف --> <button type="button" supplier="' . $row['id'] . '" class="btn btn-danger delete">حذف</button> </td> </tr> <?php } ?> </tbody> </table> كده المفروض انه عادي جدا يجيبلي كل البنود اللي ف جدول التوريد لكن النتيجة كالتالي زي ما حضرتك شايف كده الاستعلام بتاع اسم المورد بيظهر عادي لكن محتوى بنود التوريد لا تظهر الا في اخر شركة مسجلة زي ما في الصورة ايه غلطي هنا؟ بعد ما اعرف غلطي و اجيب الداتا بتاعه بنود التوريد بشكل كامل من جدولها الخاص بها الخطوة اللي بعدها اجيب الداتا بتاعة بنود التوريد الخاصة بالمورد فقط
  17. لما غيرت الشرط اخي الفاضل ظهرلي التالي في الكونسول <br /> <b>Notice</b>: Trying to get property 'num_rows' of non-object in <b>C:\xampp\htdocs\arabia\modules\suppliers\add_exe.php</b> on line <b>123</b><br />
  18. سلام عليكم ارهقت الاساتذة بأسالتي الكثيرة و لكننا نتعلم منكم السؤال ببساطة عندي 3 جداول الاول suppliersdb و يحتوي على بيانات الموردين الثاني supplying_items و يحتوي على بيانات بنود التوريد بشكل عام و التي يقوم المستخدم بتغذيتها في هذا الجدول حين يقوم المستخدم بادخال مورد فمن الطبيعي ان يختار له بنود توريد ، و لكي يختار يتم فتح قائمة منسدلة له محتواها هو جدول supplying_items ( جميع بنود التوريد) و حين يضغط على حفظ يقوم النظام بتسجيل بنود هذا المورد فقط في الجدول الثالث باسم supply_item الان انا حابب اعمل جدول استعرض فيه بيانات الموردين زي ما في الصورة كده لما قمت بوضع حلقة while و استعلام لجلب بيانات التوريد الخاصة بالمورد المذكور فقط ظهرلي بس في الجدول اخر مورد قمت بتسجله و قائمة بنود التوريد كانت فاضية مع العلم اني جربت الاستعلام على قاعدة البيانات و اشتغل حلو و ده الكود بتاعي <div class="table-responsive"> <table class="table table-primary table-bordered" dir="rtl" id="result"> <thead> <tr align="center"> <th scope="col">الكود</th> <th scope="col">اسم الشركة</th> <th scope="col">بنود التوريد</th> <th scope="col">إعدادات</th> </tr> </thead> <tbody> <?php //الاستعلام $result = $conn->query("SELECT * FROM suppliersdb ORDER BY id DESC"); // تعريف المتغيرات while ($row = $result->fetch_assoc()) { //تعريف بنود التوريد $id = $row['id']; $username= $row['username']; //نهاية تعريف بنود التوريد ?> <tr class="table-light" align="center"> <td scope="row"><?php echo $row['id']; ?></td> <td ><?php echo $row['username']; ?></td> <!-- بنود التوريد --> <td> <select class="form-select form-select-lg mb-3" aria-label="بنود التوريد"> <option selected>افتح لمشاهدة بنود التوريد</option> <?php $sql = "SELECT `supplying_items`.`id` AS idtotal, `supplying_items`.`name` AS nametotal, `supplier_id` AS sid , `supply_item`.`item` AS sitem, `suppliersdb`.`id` AS suppliersmainID FROM `supplying_items`, `supply_item`, `suppliersdb` WHERE `supply_item`.`item` = `supplying_items`.`id` && `suppliersdb`.`id` = $id"; while ($m = $result->fetch_assoc()) { $nametotal = $m['nametotal']; echo '<option selected>' . $m['nametotal'] . '</option>'; } ?> </select> </td> <td align="center"> <button username="'. $row['username'].'" oName="'.$row['owner_name'].'" address="'.$row['address'].'" phone="'.$row['phones'].'" whatsapp="'.$row['ownerWhatsapp'].'" email="'.$row['email'].'" website="'.$row['website'].'" class="btn btn-outline-primary m-auto mt-2 more" data-toggle="modal" data-target="#more">عرض المزيد</button> <!-- زر التعديل --> <a href="edit_supplier.php?id=' . $row['id'] . '" target="_blank"> <button type="button" class="btn btn-primary">تعديل</button></a> <!-- زر الحذف --> <button type="button" supplier="' . $row['id'] . '" class="btn btn-danger delete">حذف</button> </td> </tr> <?php } ?> </tbody> </table> </div> ما الذي ينبغي علي فعله
  19. سلام عليكم في هذه الصفحة يقوم المستخدم بكتابة رقم مثلا 2 في خانة الموردين فيظهر له عدد 2 قائمة منسدلة بها محتويات بنود التوريد ليقوم باختيارها و ربطها بهذا المورد <!-- items --> <div class="main-card mb-3 card"> <div class="card-body text-center"> <h3 class="card-title">بنود التوريد</h3> <div class="form-row items"> <div id="itemsCountDiv" class="col-12"> <label class="required">عدد الخامات التي تقوم هذه الشركة بتوريدها </label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <input type="number" min="1" max="24" class="form-control items-count" value="0" > <div class="input-group-append"> <button type="button" class="btn btn-success items-count-btn">إضافة</button> </div> </div> </div> </div> </div> </div> و هذا سكربت تعريف و تمرير المتغيرات 'use strict'; window.addEventListener('load', function() { var forms = document.getElementsByClassName('needs-validation'); var validation = Array.prototype.filter.call(forms, function(form) { form.addEventListener('submit', function(event) { if (form.checkValidity() === false) { event.preventDefault(); event.stopPropagation(); Swal.fire({ icon: 'error', title: 'يرجى ملئ جميع الحقول المطلوبة', confirmButtonText: 'حسنا', showCloseButton: true }); } else { var ownerName = $(".ownerName").val(), username = $(".username").val(), ownerWhatsapp1 = $(".ownerWhatsapp").val(), address = $(".address").val(), email = $(".email").val(), website = $(".website").val(), phone = $(".phone").val(), qr = $("#qr1").attr("src"); var items=[]; var contacts = []; var contact_job =[]; var contact_tel =[]; var branch_name =[]; /*var file_data = $(".logo").prop('files')[0]; */ $(".items").each(function() { items.push($(this).val()); }); $(".contact-name").each(function() { contacts.push($(this).val()); }); $(".contact-job").each(function() { contact_job.push($(this).val()); }); $(".contact-tel").each(function() { contact_tel.push($(this).val()); }); $(".branch-name").each(function() { branch_name.push($(this).val()); }); var form_data = new FormData(); form_data.append('action', "add_user"); form_data.append('username', username); form_data.append('ownerName', ownerName); form_data.append('ownerWhatsapp', ownerWhatsapp1); form_data.append('address', address); form_data.append('email', email); form_data.append('website', website); form_data.append('qr', qr); /*form_data.append('logo', file_data);*/ form_data.append('phone', phone); form_data.append('items', JSON.stringify(items) ); form_data.append('contacts', JSON.stringify(contacts) ); form_data.append('contact_job', JSON.stringify(contact_job) ); form_data.append('contact_tel', JSON.stringify(contact_tel) ); form_data.append('branch_name', JSON.stringify(branch_name) ); $.ajax({ url: "modules/suppliers/add_exe.php", dataType: 'text', 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.href = "add_suppliers.php"; } }) } else { Swal.fire({ icon: 'error', title: 'حدث خطأ حاول مجددا', confirmButtonText: 'حسنا', showCloseButton: true }); console.log(data); } } }); } form.classList.add('was-validated'); }, false); }); }, false); })(); و هذه سكربت الضغط على زر اضافة // Add Multi items fields after setting a number $(".items-count-btn").click(function () { var count = $(".items-count").val(); if (count>0){ $(".co").remove(); var col_inputs = ''; for (i=0 ; i<count ; i++) { col_inputs += ` <div class="form-row items col"> <div class="col co"> <div class="form-group"> <label for="sel1">اختر مورد</label> <select class="form-control items" id="sel1"> <?php $result = $conn->query("SELECT * FROM supplying_items"); while ($row = $result->fetch_assoc()) { echo '<option value="' . $row['name'] . '">' . $row['name'] . '</option>'; } ?> </select> </div> </div> </div> `; } $(this).parent().parent().parent().after(col_inputs); colorsStatus = true; } //console.log($(".color-degree")); }); و اخيرا هذا هو ملف الاستعلام و التنفيذ <?php include("../../includes/db.php"); include("../../includes/functions.php"); //var_dump($_POST);exit; $action = $_POST['action']; switch ($action){ case 'add_qr': $data = $_POST['data']; $res = getQRCode($data); if ($res) { echo $res; } else echo ''; break; case 'check_user': $username = $_POST['username']; $result = $conn->query("SELECT * FROM suppliersdb WHERE username ='$username' "); $num = mysqli_num_rows($result); if ($num == 0) { echo "ok"; } else echo "no"; break; case 'add_user': // $res = upload_image('suppliersdb',$_FILES['logo'],60,60); // if (!empty($res)){ // if ($res['code'] == 1){ // $logo = $res['name']; // } // } $ownerName = $_POST['ownerName']; $username = $_POST['username']; $ownerWhatsapp1 = $_POST['ownerWhatsapp']; $address = $_POST['address']; $email = $_POST['email']; $website = $_POST['website']; $phone = $_POST['phone']; $qr = $_POST['qr']; $items = json_decode($_POST['items']) ; $contacts = json_decode($_POST['contacts']) ; $contact_tel = json_decode($_POST['contact_tel']) ; $contact_job = json_decode($_POST['contact_job']) ; $branch_name = json_decode($_POST['branch_name']) ; // var_dump($model_name);exit; $result = $conn->query("INSERT INTO suppliersdb( username, owner_name, address, ownerWhatsapp, email, website, phones, qr ) VALUES ( '$username', '$ownerName',' $address', '$ownerWhatsapp1', '$email', '$website', '$phone', '$qr' )"); if ($result) { $last_id = $conn->insert_id; if (sizeof($items) > 0){ $query = "INSERT INTO supply_item (supplier_id, item) VALUES "; foreach ($items as $k => $v){ $query.= "('$last_id','$v')"; if ($k !== sizeof($items) -1) { $query .= ','; } else { $query .= ';'; } } $result = $conn->query($query); if (!$result){ echo "Error: " . "<br>" . $conn->error; } } if (sizeof($contacts) > 0){ $query = "INSERT INTO suppliers_contacts (supplier_id, name, job, tel, branch) VALUES "; foreach ($contacts as $k => $v){ $query.= "('$last_id','$v','$contact_job[$k]','$contact_tel[$k]','$branch_name[$k]')"; if ($k !== sizeof($contacts) -1) { $query .= ','; } else { $query .= ';'; } } $result = $conn->query($query); if (!$result){ echo "Error: " . "<br>" . $conn->error; } } echo "done"; }else { echo $conn->error; } break; case 'edit_user': $id = $_POST['id']; $ownerName = $_POST['ownerName']; $username = $_POST['username']; $factory = $_POST['factory']; $shop = $_POST['shop']; $tax = $_POST['tax']; $active = $_POST['active']; $ownerWhatsapp1 = $_POST['ownerWhatsapp']; $address = $_POST['address']; $email = $_POST['email']; $website = $_POST['website']; $name = $_POST['name']; $idT = $_POST['idT']; $nId = $_POST['nId']; $phone2 = $_POST['phone2']; $whatsapp = $_POST['whatsapp']; $email2 = $_POST['email2']; $name2 = $_POST['name2']; $work = $_POST['work']; $whatsapp3 = $_POST['whatsapp3']; $email3 = $_POST['email3']; $phones = $_POST['phones']; $qr = $_POST['qr']; $model_factory = json_decode($_POST['model_factory']); $model_name = json_decode($_POST['model_name']); $contacts = json_decode($_POST['contacts']); if (isset($_FILES['logo'])){ $res = upload_image('suppliersdb',$_FILES['logo'],60,60); if (!empty($res)){ if ($res['code'] == 1){ $logo = $res['name']; } } } else { $logo = $_POST['logo']; } $query = 'UPDATE suppliersdb SET '; $query.= 'username="'.$username.'",'; $query.= 'logo="'.$logo.'",'; $query.= 'ownerName="'.$ownerName.'",'; $query.= 'factory="'.$factory.'",'; $query.= 'reg="'.$shop.'",'; $query.= 'tax="'.$tax.'",'; $query.= 'active="'.$active.'",'; $query.= 'ownerWhatsapp="'.$ownerWhatsapp1.'",'; $query.= 'address="'.$address.'",'; $query.= 'email="'.$email.'",'; $query.= 'website="'.$website.'",'; $query.= 'phones="'.$phones.'",'; $query.= 'owner="'.$name.'",'; $query.= 'idT="'.$idT.'",'; $query.= 'idNum="'.$nId.'",'; $query.= 'phone="'.$phone2.'",'; $query.= 'whatsapp="'.$whatsapp.'",'; $query.= 'email2="'.$email2.'",'; $query.= 'name="'.$name2.'",'; $query.= 'work="'.$work.'",'; $query.= 'whatsapp2="'.$whatsapp3.'",'; $query.= 'email3="'.$email3.'",'; $query.= 'qr="'.$qr.'" '; $query.= 'WHERE id='.$id.' '; $result = $conn->query($query); while (mysqli_next_result($conn)){;} if ($result) { $q = "DELETE FROM suppliers_contacts WHERE supplier_id=". $id . "; " ."DELETE FROM supply_item WHERE supplier_id=". $id . "; "; $result = $conn->multi_query($q); while (mysqli_next_result($conn)){;} if (sizeof($contacts) > 0){ $query = "INSERT INTO suppliers_contacts (supplier_id, name) VALUES "; foreach ($contacts as $k => $v){ $query.= "('$id','$v')"; if ($k !== sizeof($contacts) -1) { $query .= ','; } else { $query .= ';'; } } $result = $conn->query($query); if (!$result){ echo "Error: from 2ed insert" . "<br>" . $conn->error; } } if (sizeof($model_name) > 0){ $query = "INSERT INTO supply_item (supplier_id, name, factory) VALUES "; foreach ($model_name as $k => $v){ $query.= "('$id','$v','$model_factory[$k]')"; if ($k !== sizeof($model_name) -1) { $query .= ','; } else { $query .= ';'; } } $result = $conn->query($query); if (!$result){ echo "Error from 1st insert: " . "<br>" . $conn->error; } } echo "done"; } else { echo $conn->error ."\n Query:" ; var_dump($query); } break; case 'delete_user': $id = $_POST['id']; $result = $conn->query("UPDATE suppliersdb SET deleted=1 WHERE id='$id' "); if ($result) { echo "done"; } break; case 'update_textiles_caring': $id = $_POST['id']; $title = $_POST['title']; $result = $conn->query("UPDATE textiles_caring SET title='$title' WHERE id='$id' "); if ($result == true) { echo "done"; } break; default: echo ""; } الدنيا شغاله تمام لكن بمجرد ما اضيف بنود التوريد تتضاف عادي لكن بينضاف معاها حقول فاضية بتتربط باي دي المورد زي ما في الصورة ايه الحل ؟
  20. شكرا لكم ايها الاساتذة الكرام تم حل المشكلة بالتعديل التالي على ملف التنفيذ <?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); ?>
  21. سلام عليكم ساعدوني فضلا في ايجاد الخطأ انا بحاول اضيف بند لقاعدة البيانات باستخدام 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); } مش راضي يقبل الاضافة نهائي ، ايه الغلطة بتاعتي ؟
  22. سلام عليكم الامر ببساطة اني لما بيكون عندي Form فيه Elements ثابته فده مفيش اي مشكلة نهائي اني ادخله في الداتابيز قاعدة البيانات تمام و الجدول اسمه معروف و الحقول اللي البيانات هاتدخل فيها كمان معروفة لكن مثلا في المثال التالي <!DOCTYPE html> <html lang="en"> <head> <title>Learning Php</title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script> </head> <body> <div class="jumbotron text-center"> <h1>My Test</h1> </div> <div class="container"> <div class="row"> <div id="brandsCountDiv" class="col-12"> <label>Enter No</label><label style="font-size: 11px; color:red;">*</label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="fa fa-th"></i></span> </div> <input type="number" min="1" max="24" class="form-control brands-count" value="0" required> <div class="input-group-append"> <button type="button" class="btn btn-success brands-count-btn">ADD</button> </div> </div> </div> </div> <div class="main-card mb-3 card"> <div class="card-body"> <div class="form-row"> <button class="btn btn-success center-submit" type="submit">submit</button> </div> </div> </div> </div> <script>// Add Multi Models fields after setting a number $(".brands-count-btn").click(function () { var count = $(".brands-count").val(); if (count>0){ $(".br").remove(); var col_inputs = ''; for (i=0 ; i<count ; i++) { col_inputs += ` <div class="form-row brands col-12"> <div class="col br"> <div class="inputgroup"> <label>add name</label><label style="font-size: 11px; color:red;">*</label> <div class="input-group"> <div class="input-group-prepend"> <span class="input-group-text" id="inputGroupPrepend"><i class="pe-7s-user"></i></span> </div> <input type="text" class="form-control brand-name" placeholder="test" required> <div class="invalid-feedback"> Please Write an entry </div> </div> </div> </div> </div> `; } $(this).parent().parent().parent().after(col_inputs); colorsStatus = true; } //console.log($(".color-degree")); });</script> </body> </html> انا عامل input text بتحط فيه رقم لما بضغط عالرقم ده بيظهرلي input text بنفس العدد اللي كتبته يعني لو كتبت 2 هايظهرلي خانتين لو كتبت 3 هايظهر 3 و هكذا السؤال الاول ازاي ادخل البيانات المتغيره دي في الداتابيز ؟ انا عاوز لو اليوزر اختار مثلا 4 خانات يبقى يتسجل رقم 4 ، و قيم ال 4 خانات تتسجل برضه اعملها ازاي و لو شرح مفصل شويا يبقى كتر خيركم السؤال الثاني :- ازاي برضه اخرجها من الداتابيز عشان لو اليوزر حب يعدل عليها شكرا لكم
×
×
  • أضف...