• أعضاء وزوار منتديات المشاغب ، نود أن نعلمكم أن المنتدى سيشهد في الفترة القادمة الكثير من التغيرات سواءاً على المستوى الإداري او مستوى الاقسام، لذا نرجو منكم التعاون، وأي ملاحظات او استفسارات يرجى التواصل معنا عبر قسم الشكاوي و الإقتراحات ونشكركم على حسن تفهمكم وتعاونكم ،مع خالص الشكر والتقدير والاحترام من إدارة منتديات المشاغب.

استفسار طلب مساعدة برمجة صفحة ادخال بيانات

Abrawi90

عضو جديد
سجل
3 نوفمبر 2024
المشاركات
1
التفاعل
0
العمر
46
الإقامة
Oman
الجنس
ر
السلام عليكم

ابحث عن كود كامل لصفحة ادخال بيانات لرسائل مستلمة بشكل يومي

والفكرة هي ادخال بيانات كخانات مثل الاسم المنطقة نوع الرسالة تاريخ استلام الرسال وغيرها من البيانات

وبعد ادخالها والضغط على زر تخزين يتم تخزينها تلقائيا في جدول اسفل الصفحة

وايضا احتاج ان يكون هناك زر للبحث عن اي بيانات اخرى في اي وقت اريد

اريد تعلم هذه البرمجة في برنامج visula studio code css

افتراضا اريد تخزيم البيانات كهذه
form1.png
ثم تاتي البيانات في الاسفل تحت خانات البيانات كهذه

form2.png

اتمنى في احد يساعدني

انا جديد واحاول اتعلم منكم



شكرا
 
التعديل الأخير:
وعليكم السلام ورحمة الله وبركاته

حياك الله

بداية أنصحك بالاستفادة من الذكاء الاصطناعي في البرمجة فهو يفيدك كثيرا في الاكواد البرمجية

وخاصة chatGPT و copilot

بالنسبة لاستفسارك فهذه إجابة chatGPT

___________


صفحة إدخال بيانات مشابهة لما طلبت، مع تخزين البيانات في جدول وإمكانية البحث، يمكنك استخدام HTML وCSS وJavaScript. سأقوم بتوفير كود كامل لإنشاء واجهة مستخدم بسيطة تعمل على متصفحك، بحيث يمكنك استخدامها كنقطة انطلاق.

الكود يتكون من جزء إدخال البيانات، جدول لعرض البيانات، ووظيفة للبحث، وكلها مدمجة في ملف واحد:

HTML + CSS + JavaScript


HTML:
<!DOCTYPE html>
<html lang="ar">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>إدخال بيانات الرسائل</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            direction: rtl;
            text-align: right;
            padding: 20px;
        }

        .form-container {
            margin-bottom: 20px;
        }

        label {
            display: block;
            margin: 5px 0;
        }

        input[type="text"], input[type="date"], button {
            padding: 10px;
            margin-bottom: 10px;
            width: 100%;
            box-sizing: border-box;
        }

        button {
            background-color: #4CAF50;
            color: white;
            border: none;
            cursor: pointer;
        }

        button:hover {
            background-color: #45a049;
        }

        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }

        table, th, td {
            border: 1px solid #ddd;
            padding: 8px;
        }

        th {
            background-color: #f2f2f2;
        }
    </style>
</head>
<body>

<h2>إضافة تفاصيل الرسائل</h2>
<div class="form-container">
    <label for="name">الاسم:</label>
    <input type="text" id="name" placeholder="ادخل الاسم">

    <label for="region">المنطقة:</label>
    <input type="text" id="region" placeholder="ادخل المنطقة">

    <label for="messageType">نوع الرسالة:</label>
    <input type="text" id="messageType" placeholder="ادخل نوع الرسالة">

    <label for="dateReceived">تاريخ استلام الرسالة:</label>
    <input type="date" id="dateReceived">

    <button onclick="addData()">إضافة</button>
</div>

<h2>معلومات الرسائل</h2>
<input type="text" id="searchInput" onkeyup="searchTable()" placeholder="ابحث عن البيانات">
<table id="dataTable">
    <thead>
        <tr>
            <th>الاسم</th>
            <th>المنطقة</th>
            <th>نوع الرسالة</th>
            <th>تاريخ الاستلام</th>
        </tr>
    </thead>
    <tbody id="tableBody">
        <!-- سيتم إضافة البيانات هنا -->
    </tbody>
</table>

<script>
    function addData() {
        const name = document.getElementById("name").value;
        const region = document.getElementById("region").value;
        const messageType = document.getElementById("messageType").value;
        const dateReceived = document.getElementById("dateReceived").value;

        if (name && region && messageType && dateReceived) {
            const tableBody = document.getElementById("tableBody");
            const newRow = document.createElement("tr");

            newRow.innerHTML = `
                <td>${name}</td>
                <td>${region}</td>
                <td>${messageType}</td>
                <td>${dateReceived}</td>
            `;

            tableBody.appendChild(newRow);

            // مسح الحقول بعد الإضافة
            document.getElementById("name").value = "";
            document.getElementById("region").value = "";
            document.getElementById("messageType").value = "";
            document.getElementById("dateReceived").value = "";
        } else {
            alert("يرجى تعبئة جميع الحقول");
        }
    }

    function searchTable() {
        const searchInput = document.getElementById("searchInput").value.toLowerCase();
        const tableRows = document.getElementById("tableBody").getElementsByTagName("tr");

        for (let row of tableRows) {
            let cells = row.getElementsByTagName("td");
            let rowContainsQuery = false;

            for (let cell of cells) {
                if (cell.textContent.toLowerCase().includes(searchInput)) {
                    rowContainsQuery = true;
                    break;
                }
            }

            row.style.display = rowContainsQuery ? "" : "none";
        }
    }
</script>

</body>
</html>

الشرح

إضافة البيانات: يتم إدخال بيانات الرسالة (الاسم، المنطقة، نوع الرسالة، تاريخ الاستلام) في الحقول المحددة، وعند الضغط على زر "إضافة" يتم إضافة البيانات إلى الجدول أسفل النموذج.

التخزين في الجدول: يتم تخزين البيانات المدخلة مباشرة في الجدول عبر JavaScript، بحيث يتم إنشاء صف جديد في الجدول مع كل عملية إضافة.

البحث في البيانات: يوجد مربع بحث فوق الجدول يسمح لك بالبحث في جميع البيانات المدخلة في أي عمود من الجدول.


طريقة الاستخدام

1. انسخ الكود أعلاه والصقه في ملف جديد بامتداد .html باستخدام برنامج Visual Studio Code.


2. افتح الملف في متصفح الويب لترى النتيجة.


3. يمكنك إدخال البيانات والبحث كما هو موضح في الصور التي أرسلتها.



يمكنك التوسع في هذا النموذج بإضافة المزيد من الميزات كالتخزين في قاعدة بيانات أو تحسين الواجهة الرسومية باستخدام

المزيد من خصائص CSS.

___________

بالتوفيق ،،
 
المنتدى غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء.
فعلى كل شخص تحمل مسؤولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق واعطاء معلومات موقعه.
المواضيع والتعليقات المنشورة لا تعبر عن رأي منتدى المشاغب ولا نتحمل أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)
عودة
أعلى