-
المساهمات
121 -
تاريخ الانضمام
-
تاريخ آخر زيارة
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
أجوبة بواسطة Hamada Ahmed
-
-
السلام عليكم ورحمة الله وبركاته
لدي مشكلة في أن البيانات يتم ارسالها للقاعدة لكن بعد الارسال لا يتم تفريغ الفورم
ما المشكلة في ذلك
<form method="post" id="messages"> <textarea name="message" id="message" ></textarea> <INPUT type="submit" name="post" id="post" value="ارسال"> </form> <script> $(document).ready(function(e) { $("#messages").on('submit', function(e) { e.preventDefault(); $.ajax ({ type: 'POST', url: 'send.php', data: new FormData(this), dataType: 'json', contentType: false, cache: false, processData:false, success: function(response) { $('#messages')[0].reset(); } }); }); }); </script>
- 2
-
بتاريخ 3 ساعات قال Wael Aljamal:
هذه الأحداث غير متزامة، أرجو فصل موضوع تحديث الرسائل عن عمل إنزلاق للرسالة الحديثة واجعلها منفصلة مرتبطة بحدث نقر للمستخدم كما حاولت التوضيح في الإجابة السابقة.
هل تقصد أن الكود يحتاج الى اعادة ترتيب اذا كان الامر كذلك فان الكود كاملا هكذا
<style type="text/css">
<!--
.div_show_message_groups{
overflow-y:auto;
height:350px;
width:485px;
margin:0px;
}
-->
</style>
<script src="js/jquery-3.6.0.min.js"></script>
<div class="div_show_message_groups" id="div_show_message_groups"></div>
<script>
$(document)
.ready(function(e) {
/*الوظيفة المسؤولة عن عمل الاسكرول*/
function scrollToBottom() {
var div = $('#div_show_message_groups');
div.scrollTop(div.prop("scrollHeight"));
}
/*استدعاء الدالة عند كل تحميل جديد للصفحة*/
scrollToBottom();
var userIsScrolling = false;
/*يتم تغيير فيمة المتغير عند كل تحريك للشريط الجانبي*/
$('#div_show_message_groups')
.scroll(function() {
userIsScrolling = true;
});
/*ان توقفف المستخدم عن تحريك الشريط الجانبي لأكثر من ثلاث ثواني سيتم تغيير قيمة المتغير*/
setInterval(function() {
userIsScrolling = false;
}, 3000);
/*الدالة المسؤولة عن جلب الرسائل من الواجهة الخلفية*/
function getMessages(letter) {
var message = $('#div_show_message_groups');
$.get('show_pages/display_messages_groups.php', function(data) {
message.html(data);
// ضبط الشريط الجانبي للأسفل عند كل رسالة جديدة , و في حالة عدم تحريكه من طرفف المستخدم
if (!userIsScrolling) {
scrollToBottom();
}
});
}
setInterval(function() {
getMessages("letter");
}, 100)
/*إرسال طلب إلى الواجهة الخلفية بتسجيل رسالة جديدة*/
$("#messages_form_groups")
.on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'send_pages/send_messages_form_groups.php',
data: new FormData(this),
dataType: 'json',
contentType: false,
cache: false,
processData: false,
success: function(response) {
if (response.status == 1) {
$('#messages_form_groups')[0].reset();
}
}
});
});
});
</script>هل تتفضل مهندس وائل وتعدله لي مع الشكر والامتنان
-
بتاريخ 2 ساعات قال Adnane Kadri:
لتفادي المشكل يمكننا تكبير المهلة الزمنية التي يتم فيها التحقق ما إن كان المستخدم قد قام بتحريك الشريط الجانبي إلى مهلة تراها مناسبة أكثر ، يمكننا بهذا إعطاء المستخدم وقتا أكثر لقراءة الرسائل بدون عمل أي إنزلاق للشريط الجانبي .
قمت بتكبيرها الى 9000 لكنها غير كافية للتحرك لأعلى وتكبيرها أكثر من ذلك سيتسبب في تأخر الرسائل الواردة وأيضا لا يمنع من التحرك التلقائي لأسفل عند انتهاء هذا الزمن مهما كان كبيرا - فى الواتس مهما استغرق الزمن للتحرك لأعلى لا ينزلق الشريط لأسفل - لا اعرف ما الطريقة المستخدمة في مثل هذه المحادثات
-
شكرا للأخوة الأفاضل @عبدالباسط ابراهيم@سامح أشرف@Adnane Kadri @Wael Aljamal
تم تجريب الكود حرفيا كالتالي ... لكن التحرك التلقائي للأسفل لا يترك فرصة لقراءة الرسائل القديمة هناك حلقة مفقودة في الموضوع انا قمت بوضع div_show_message_groups بدلا من div1
الكود كما جربت
<style type="text/css">
<!--
.div_show_message_groups{
overflow-y:auto;
height:350px;
width:485px;
margin:0px;
}
-->
</style>
<script src="js/jquery-3.6.0.min.js"></script>
<div class="div_show_message_groups" id="div_show_message_groups"></div>
<script>
$(document)
.ready(function(e) {
/*الوظيفة المسؤولة عن عمل الاسكرول*/
function scrollToBottom() {
var div = $('#div_show_message_groups');
div.scrollTop(div.prop("scrollHeight"));
}
/*استدعاء الدالة عند كل تحميل جديد للصفحة*/
scrollToBottom();
var userIsScrolling = false;
/*يتم تغيير فيمة المتغير عند كل تحريك للشريط الجانبي*/
$('#div_show_message_groups')
.scroll(function() {
userIsScrolling = true;
});
/*ان توقفف المستخدم عن تحريك الشريط الجانبي لأكثر من ثلاث ثواني سيتم تغيير قيمة المتغير*/
setInterval(function() {
userIsScrolling = false;
}, 3000);
/*الدالة المسؤولة عن جلب الرسائل من الواجهة الخلفية*/
function getMessages(letter) {
var message = $('#div_show_message_groups');
$.get('show_pages/display_messages_groups.php', function(data) {
message.html(data);
// ضبط الشريط الجانبي للأسفل عند كل رسالة جديدة , و في حالة عدم تحريكه من طرفف المستخدم
if (!userIsScrolling) {
scrollToBottom();
}
});
}
setInterval(function() {
getMessages("letter");
}, 100)
/*إرسال طلب إلى الواجهة الخلفية بتسجيل رسالة جديدة*/
$("#messages_form_groups")
.on('submit', function(e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: 'send_pages/send_messages_form_groups.php',
data: new FormData(this),
dataType: 'json',
contentType: false,
cache: false,
processData: false,
success: function(response) {
if (response.status == 1) {
$('#messages_form_groups')[0].reset();
}
}
});
});
});
</script>- 1
-
بتاريخ 1 ساعة قال عبدالباسط ابراهيم:
يعتبر الموضوع بسيط حيث يمكنك التحكم في ال scroll من خلال الخاصية scrollTop بواسطة javascript لاحظ الكود التالي من خلال jquery
var div = $('#div1'); div.scrollTop(div.prop("scrollHeight"));
و إذا كنت تريد التحرك ب animation يمكنك استخدام الكود التالي
$("#div1").animate({ scrollTop: $('#div1').prop("scrollHeight")}, 1000);
الكود السابق يقوم بتحريك الصفحة لأسفل ال div المحدد يمكنك استخدام هذا الكود ضمن موقعك كما تريد
لكن بهذه الطريقة سيظل الشريط الجانبي للأسفل دائما ولن نتمكن من قراءة اي رسائل قديمة
أظن ان الحل هو وضع مجموعة شروط if قبل وضع الكود الذي قدمته لكن انا لا اعرف كيف يتم وضع هذه الشروط مثلا -
1-لو تم تحديث الصفحة يتحرك الشريط لاسفل
2 - لو عرضت رسالة جديدة يتحرك الشريط لاسفل
3 - لو كان المستخدم يتحرك بالشريط لاعلى واتت رسالة جديدة لا يتحرك الشريط لاسفل
انا لا اعرف كيف يمكن ترجمة ذلك الى اكواد
-
السلام عليكم ورحمة الله اخواني الأفاضل
نرى في محادثات الواتساب عند تحميل المحادثة يتحرك الشريط الجانبي لأسفل وعند ورود رسالة جديدة يتحرك ايضا الى أسفل المحادثة وعندما نرتفع لأعلى لقرائة الرسائل القديمة اذا كانت هناك رسالة واردة يظهر سهم عند الضغط عليه يتحرك الشريط الجانبي الى اسفل المحادثة
اتسائل هل هذا الأمر صعب التطبيق وهل يمكن تنفيذه في البرنامج التالي حيث عند اعادة تحميل الصفحة يتحرك الشريط لأسفل وعند ورود رسالة جديدة يتحرك الشريط لأسفل وعند قراءة الرسائل القديمة يتوقف الشريط الجانبي عن التحرك التلقاءي
<div class="div_show_message_groups" id="div_show_message_groups"> </div> <script> $(document).ready(function(e) { function getMessages(letter) { var message=$('#div_show_message_groups'); $.get('show_pages/display_messages_groups.php', function(data) { message.html(data); }); } setInterval(function() { getMessages("letter"); }, 100) //....... $("#messages_form_groups").on('submit', function(e) { e.preventDefault(); $.ajax ({ type: 'POST', url: 'send_pages/send_messages_form_groups.php', data: new FormData(this), dataType: 'json', contentType: false, cache: false, processData:false, success: function(response) { if(response.status == 1) { $('#messages_form_groups')[0].reset(); } } }); }); }); </script>
- 1
-
-
تاريخ البداية وتاريخ النهاية يتم حفظهم بنفس التنسيق
اظن ان المشكلة في الكود التالي
<?php if ( date("Y-m-d H:i:s")==$row['end_time'] ) : ?>
- 1
-
السلام عليكم
هذا محتوى خبر عاجل في القاعدة يتم تخزين تاريخ نهاية الخبر بعد اسبوع
$date = date("Y-m-d H:i:s", strtotime("+1 week"));
الكود كالتالي
<?php $stmt = $db->prepare('SELECT * FROM breaking_news'); $stmt->execute(); $result = $stmt->get_result(); ?> <?php while ($row = $result->fetch_assoc()) : ?> <?php if ( date("Y-m-d H:i:s")==$row['end_time'] ) : ?> <?php $news =""; $date =""; $end_time =""; $stmt = $db->prepare("UPDATE breaking_news SET news=?,date=?,end_time=?"); $stmt->bind_param('sss',$news,$date,$end_time); $stmt->execute(); ?> <?php endif; ?> <?php endwhile; ?>
المفترض عندما يتساوى التاريخ الحالي مع تاريخ نهاية الوقت يتم تفريغ المحتوى - لكن بعد مرور الوقت لايحدث ذلك
ما هي المشكلة لو تفضلتم
- 1
-
بتاريخ 9 ساعات قال Adnane Kadri:
عذرا , قد ورد خطأ في الكود هنا بالضبط :
$('#messages_form_groups').insertBefore(newEmptyImg);
فالمفروض أن يقوم هذا بـ تضمين العنصر الجديد قبل العنصر بالمعرف messages_form_groups , و هو ما نحتاجه و صوابه :
$(newEmptyImg).insertBefore('#messages_form_groups');
قم باستبدال الخطأ بصوابه و أخبرني بالنتيجة
شكرا حبيبي الغالي يعمل بنجاح
- 1
-
بتاريخ منذ ساعة مضت قال Adnane Kadri:
لا يؤدي تغيير خاصية src إلى "إلغاء تحميل" مورد الصورة - بل سيزيل فقط ارتباطها بعنصر <img /> هذا . أي أن التغييرات لن تظهر مباشرة , بل ستظهر في حالة إعادة تحميل عنصر الصورة مجددا .
لأن إعادة التحميل ليس شيئًا يمكنك تحقيقه بالصور ، و في الغالب أنك لا تريد حقًا "تفريغه". بل تحاول إخفاءه أو إزالته أو ربما إعادة تحميله ، ولكن عليك الاحتفاظ به لأسباب معينة .
و لذلك سيتبقى حل أن تقوم بحذف الصورة كليا ثم إعادة تضمين صورة جديدة بعد عرضها و إرسال طلب الأجاكس .
و لذلك سيكون الكود الخاص بالعملية كاملة مشابها للتالي :
<!-- لنتأكد من تعريف الصورة --> <img class="img-thumbnail" id="viewimg" style="display:none;"> <form id="messages_form_groups" enctype="multipart/form-data" class="form_msgs"> <label for="file" title="صورة"> <img src="images/photo_upload.png" /> </label> <input name="picname" id="putname" type="hidden"> <textarea class="textarea_msgs_groups" name="message" id="message" maxlength="350" placeholder="اكتب رسالة ...."> </textarea> <div class="myButton" title="ارسال"> <input type="submit" name="submit_profile" value=""> </div> <script> $("#messages_form_groups") .on('submit', function(e) { e.preventDefault(); $.ajax({ type: 'POST', url: 'send_pages/send_messages_form_groups.php', data: new FormData(this), dataType: 'json', contentType: false, cache: false, processData: false, success: function(response) { if (response.status == 1) { $('#messages_form_groups')[0].reset(); // إزالة العنصر كاملا $('#viewimg').remove(); // صورة جديدة فارغة var newEmptyImg = '<img class="img-thumbnail" id="viewimg" style="display:none;">'; // وضعها مكان السابقة $('#messages_form_groups').insertBefore(newEmptyImg); } } }); }); }); </script>
بعد الارسال يتم ازالة الفورم كليا مع viewimg
-
السلام عليكم
في البرنامج التالي يتم ارسال رسالة لقاعدة البيانات ربما تحتوي معها صورة ويتم عرض الصورة قبل رفعها
<img class="img-thumbnail" id="viewimg" style="display:none;">
بعد الارسال يتم تفريغ حقل النص
$('#messages_form_groups')[0].reset();
المشكلة ان الصورة المعروضة تظل عالقة ولا تختفي الا بعد اعادة تحميل الصفحة
كيف يمكن ازالة عرضالصورة بعد الارسال كما حدث للنص فى منطقة textarea
<img class="img-thumbnail" id="viewimg" style="display:none;"> <form id="messages_form_groups" enctype="multipart/form-data" class="form_msgs"> <label for="file" title="صورة"> <img src="images/photo_upload.png" /> </label> <input name="picname" id="putname" type="hidden"> <textarea class="textarea_msgs_groups" name="message" id="message" maxlength="350" placeholder="اكتب رسالة ...."> </textarea> <div class="myButton" title="ارسال"> <INPUT type="submit" name="submit_profile" value=""> </div> <script> $("#messages_form_groups").on('submit', function(e) { e.preventDefault(); $.ajax ({ type: 'POST', url: 'send_pages/send_messages_form_groups.php', data: new FormData(this), dataType: 'json', contentType: false, cache: false, processData:false, success: function(response) { if(response.status == 1) { $('#messages_form_groups')[0].reset(); } } }); }); }); </script>
- 1
-
جربت شىء كهذا لكن لم ينجح
$$stmt = $db->prepare('SELECT * FROM("SELECT u.*, a.* FROM `users_chat` as u inner join `accounts` as a WHERE u.recipient_id=? GROUP BY u.id DESC") as T GROUP BY T.u.sender_id ORDER BY u.id DESC');
$stmt->bind_param('i',$_SESSION['id']);
-
بتاريخ 4 ساعات قال بلال زيادة:
هل ممكن توضح مقصدك بأي كودين تريد دمجهم ؟
اقصد ان الكود الاخير يظهر جميع الرساءل من جدول الرسائل كيف نجعلة يظهر اخر سالة للعضو كما في الكود الاول والمحادثة بين المرسل والمستقبل في الكود الثاني
- 1
-
شكرا اخي الفاضل على هذا التنبية
لكن كيف يمكن دمج الكود الاخير بكلا الكودين الاخرين
-
السلام عليكم
في هذا البرنامج هناك قائمة منسدلة تظهر اخر رسالة للعضو
<?php $stmt = $db->prepare('SELECT * FROM(SELECT * FROM messages WHERE recipient_id=? GROUP BY id DESC) as T GROUP BY T.sender_id ORDER BY id DESC'); $stmt->bind_param('i',$_SESSION['id']); ?>
ويتم عرض الرسائل في صفحة اخرى كالتالي
<?php $stmt = $db->prepare('SELECT * FROM messages WHERE recipient_id =? AND sender_id=? OR recipient_id=? AND sender_id=? Order By id ASC'); $stmt->bind_param('iiii',$_SESSION['id'],$_GET['msgs'],$_GET['msgs'],$_SESSION['id']); ?>
والسؤال - كيف نربط كل كود منهم الخاص بجدول messages نربطه بجدول الأعضاء accounts
انا لا اعرف كيف ندمج لهم هذا الكود ان كان الكود صحيحا ايضا ام لا
<?php $stmt = $db->prepare('SELECT m.*, a.* FROM `messages` as m inner join `accounts` as a WHERE a.id=m.recipient_id AND a.id =m.sender_id'); ?>
-
لدي جدولين في قاعدة البيانات
الاول users يحتوي id ومعلومات العضو اسم وايميل وغيره
الجدول الثاني chat يحوي sender_id هو نفسه ال id في جدول users
كيف يمكن ربط الجدولين عند الاستعلام بحيث يتم عرض الرسالة من chat وعرض معلومات العضو من users
<?php $stmt = $db->prepare('SELECT * FROM chat'); $stmt->execute(); $result = $stmt->get_result(); $count = mysqli_num_rows($result); ?> <?php if ($count > 0) : ?> <?php while ($row = $result->fetch_assoc() ): ?> <?= $row['message'] ?> "> .... .... <?php endwhile; ?> <?php endif; ?> ............................ <?php $stmt = $db->prepare('SELECT * FROM users'); $stmt->execute(); $result = $stmt->get_result(); $row_accounts = $result->fetch_assoc(); $stmt->close(); ?>
- 1
-
بتاريخ 7 ساعات قال بلال زيادة:
هل يمكنك إرفاق نص المشكلة إذا كان يظهر لك , أو صورة للمشكلة ؟
شكرا حبيبي تم حلها
-
بتاريخ 10 ساعات قال بلال زيادة:
يمكنك جلب امتداد الملف عن طريق تقسيم اسم الملف بهذا الشكل
$name = explode('.', $_FILES["file"]["name"]);
ثم يمكنك برمجة كود ما ليقوم بوضع اسم بشكل عشوائي ويمكن استخدام الكود الذي أرفقته أنت بهذا الشكل
$fileName = substr(md5(uniqid(rand(), true)),3,10);
ثم يمكنك استخدام دالة end لجلب أخر عنصر في المصفوفة بهذا الشكل
$end = end($name);
ثم يمكنك دمج المتغيرات ببعضها بهذا الشكل
$name = explode('.', $_FILES["file"]["name"]); $fileName = substr(md5(uniqid(rand(), true)),3,10); $end = end($name); $newName = $fileName . '.' . $end;
ثم في دالة move_uploaded_file يمكنك وضع الاسم الجديد
move_uploaded_file($_FILES["file"]["tmp_name"], $newName);
جربت الكود لكن هناك مشكلة
<?php $uploadDir = 'uploads/'; //.............. if(!empty($_FILES["file"]["name"])) { $name = explode('.', $_FILES["file"]["name"]); $fileName = substr(md5(uniqid(rand(), true)),3,10); $end = end($name); $newName = $fileName . '.' . $end; $fileType = pathinfo($newName, PATHINFO_EXTENSION); $allowTypes = array('pdf', 'doc', 'docx', 'jpg', 'png', 'jpeg'); if(in_array($fileType, $allowTypes)) { if(move_uploaded_file($_FILES["file"]["tmp_name"], $newName)) { $uploadedFile = $fileName; } ?>
- 1
-
السلام عليكم
هذا البرنامج يقوم برفع ملف وارساله للقاعدة
كيف يمكن تغيير اسم الملف ( اسم فريد ) ليتم تخزينه بهذا الاسم مثلا
$fileName = substr(md5(uniqid(rand(), true)),3,10);
كيف يمكن تعديل الكود
<?php $uploadDir = 'uploads/'; $response = array( 'status' => 0, 'message' => 'Form submission failed, please try again.' ); // If form is submitted if(isset($_POST['name']) || isset($_POST['email']) || isset($_POST['file'])){ // Get the submitted form data $name = $_POST['name']; $email = $_POST['email']; // Check whether submitted data is not empty if(!empty($name) && !empty($email)){ // Validate email if(filter_var($email, FILTER_VALIDATE_EMAIL) === false){ $response['message'] = 'Please enter a valid email.'; }else{ $uploadStatus = 1; // Upload file $uploadedFile = ''; if(!empty($_FILES["file"]["name"])){ // File path config $fileName = basename($_FILES["file"]["name"]); $targetFilePath = $uploadDir . $fileName; $fileType = pathinfo($targetFilePath, PATHINFO_EXTENSION); // Allow certain file formats $allowTypes = array('pdf', 'doc', 'docx', 'jpg', 'png', 'jpeg'); if(in_array($fileType, $allowTypes)){ // Upload file to the server if(move_uploaded_file($_FILES["file"]["tmp_name"], $targetFilePath)){ $uploadedFile = $fileName; }else{ $uploadStatus = 0; $response['message'] = 'Sorry, there was an error uploading your file.'; } }else{ $uploadStatus = 0; $response['message'] = 'Sorry, only PDF, DOC, JPG, JPEG, & PNG files are allowed to upload.'; } } if($uploadStatus == 1){ // Include the database config file include_once 'dbConfig.php'; // Insert form data in the database $insert = $db->query("INSERT INTO form_data (name,email,file_name) VALUES ('".$name."','".$email."','".$uploadedFile."')"); if($insert){ $response['status'] = 1; $response['message'] = 'Form data submitted successfully!'; } } } }else{ $response['message'] = 'Please fill all the mandatory fields (name and email).'; } } // Return response echo json_encode($response); ?>
- 1
-
بتاريخ 1 ساعة قال Wael Aljamal:
حاول مجدداً
يبدو ان الملف تعطل عند الضغط او فيرس لا يهم
لكن يبدو ان هناك مشكلة فى $_GET['msgs']
الرسائل يتم ارسالها للقاعدة لكن لا يتم جلبها لصندوق الرسائل - عندما احذف $_GET['msgs']
يتم ظهور الرسائل
$stmt = $db->prepare('SELECT * FROM users_chat Order By id ASC');
لكن عند وجود GET لا تظهر الرسائل بصندوق العرض
$stmt = $db->prepare('SELECT * FROM users_chat WHERE recipient_id =? AND sender_id=? OR recipient_id=? AND sender_id=? Order By id ASC');
$stmt->bind_param('iiii',$_SESSION['id'],$_GET['msgs'],$_GET['msgs'],$_SESSION['id']);سوف ارفق الملف مرة اخرى لان المشكلة ربما توجد في
show_messages_users.php
او display_messages_users.php
لا اعرف حاولت جاهدا لكن لم اتمكن من الوصول لحل غير حذفGET
-
بتاريخ 18 ساعات قال Wael Aljamal:
مرحبا،
لماذا تستخدم إصدارين من جيكويري؟
ملاحظة لترتيب استدعاء بوتستراب:
// التنسيق أولا <link rel="stylesheet" href="css/bootstrap.min.css" /> // جيكويري ثانيا <script src="js/jquery-3.1.0.min.js"></script> // ثم بوتستراب جافاسكربت <script src="js/bootstrap-3.3.7.min.js"></script>
تابع مع هذه التعديلات (اعمل مقارنة مكان استدعاء جيكويري)
مرفق ملف فيه تعديل
المرفق غير صالح
-
بتاريخ 8 ساعات قال Wael Aljamal:
إن المشكلة بسبب التنسيقات، حيث أن جميع مكونات الصفحة في نفس المستوى العمودي (هي ليست فوق بعضها) بل أسفل بعضها.. وعندما يقوم المتصفح بتبديل الصورة تظهر فوق مكون آخر ثم تختفي .. هذا الوقت يقوم فيه المتصفح بإصلاح المشكلة بعد رسم الصفحة مرة أخرى..
الحل بايتخدام خاصية z-index التي تسمح لنا بتموضع العناصر فوق بعضها بالترتيب .. عليك وضع قيمة لكل من العنصرين:
.header_table{ ... z-index: 10; } .navb_table{ ... z-index: 10; }
ملحوظة : لايعمل التعليق الخاص ب HTML والذي هو :
<!-- comment -->
داخل الوسم style بل نستخدم التعليق الخاص ب CSS:
<style type="text/css"> /* .header_table{ width:100%; .... } */ </style>
شكرا اخي الفاضل لكن تتبقى المشكلة الأكبر وهي توقف الرسائل ( القائمة المنسدلة - الاشعارات - ظهور الرسائل في صندوق عرض الرسائل )
اذا اردت التجريب فكلمات السر هي 123456
للمستخدم ahmed و ali
شكرا مرة اخرى
واشكرك مرة اخرى
- 1
-
بتاريخ 22 ساعات قال Wael Aljamal:
أعتقد أنه من الأفضل رفع ملفات المشروع ليتسنى تجربته و إصلاح الأخطاء..
أشكرك أخي @Wael Aljamal
المشروع مرفق
عمل أكثر من نظام اشعارات في الموقع
في تطوير الواجهات الأمامية
نشر
السلام عليكم
لدي نظام اشعارات للرسائل في الموقع كيف يمكن تطبيق نفس الطريقة في التعليقات على المواضيع
تكرار الكود سوف يجعله مرتبط بالرسائل وتغيير مسمياته سوف يجعله لا يعمل - ما هي الطريقة لاستخدامة مرة اخرى ليرتبط بالتعليقات