• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

البحث في المنتدى

Showing results for tags 'post-increment'.

  • البحث بالتاقات

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • البحث بكاتب الموضوع

تم إيجاد 4 نتيجة

  1. مساعدة في فهم GET & POST

    أرجو مساعدتى في فهم DO GET  و DO POST في الجافا ابليكشن علماً بأنني أدرس من كتاب Java ee head first book 2nd Edition ارجو من أعضاء المنتدي الكرام شرح GET & POST الموجودين بالمرفقات بالتفصيل   وشكرا على رودودكم   
  2. السلام عليكم اخواني انا اريد ان افهم و انشاء مثل هذا النمودج بهذه الصفحة http://www.englisch-hilfen.de/en/exercises/questions/simple_present.htm اعلم ان الصفحة html ولكن اظن ان مصدر الاجابات php  حولت ولكنني لست جيد في php و لم افهم كيف يستعدي الاجوبة بعد الضغط على check  او show answers هل ينكنك مساعدتي اخي و شكرا جزيلا وهذا هو الفورم  <form id="0" name="exercise" method="post" autocomplete="off"> <input type="hidden" name="cat_name" value="Questions"> <input type="hidden" name="assignment_name" value="Questions in the Simple Present - English"> <input type="hidden" name="language" value="en"> <input type="hidden" name="exshuffle" value=""> <input type="hidden" name="assignment" value="393"> <table align=center width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td> <table align=left width="100%" bgcolor="#FFCC99" border="0" cellspacing="0" cellpadding="1"> <tr> <td> <table width="100%" bgcolor="#FFFFCC" cellspacing="4" cellpadding="1"> <tr> <td> Put in the correct verb forms into the gaps. Use <b>Simple Present</b>. <br><br><div style="display:none" id="exampleDiv"><i>Example:</i> ___ they ______ their friends? <b><i>(to phone)</i></b><br><br><i>Answer:</i> <b><i>Do</i></b> they <b><i>phone</i></b> their friends?</div><br> <a href="javascript:void(0)" onclick="$('#exampleDiv').slideToggle('slow')">Toggle example</a><br><br> </td> </tr> <tr><td></td></tr> <tr> <td> <table> <tr><td colspan="2">1) <input type="text" class="ex_textfield" id="1" tabindex="1" name="solution1_1" value="" size="6" /> you <input type="text" class="ex_textfield" id="1" tabindex="1" name="solution1_2" value="" size="6" /> mineral water? <b><i>(to drink)</i></b></td></tr> <tr><td colspan="2">2) <input type="text" class="ex_textfield" id="2" tabindex="2" name="solution2_1" value="" size="6" /> Sarah and Linda <input type="text" class="ex_textfield" id="2" tabindex="2" name="solution2_2" value="" size="6" /> their pets? <b><i>(to feed)</i></b></td></tr> <tr><td colspan="2">3) <input type="text" class="ex_textfield" id="3" tabindex="3" name="solution3_1" value="" size="6" /> your teacher <input type="text" class="ex_textfield" id="3" tabindex="3" name="solution3_2" value="" size="6" /> your homework? <b><i>(to check)</i></b></td></tr> <tr><td colspan="2">4) <input type="text" class="ex_textfield" id="4" tabindex="4" name="solution4_1" value="" size="6" /> they <input type="text" class="ex_textfield" id="4" tabindex="4" name="solution4_2" value="" size="6" /> in the old house? <b><i>(to live)</i></b></td></tr> <tr><td colspan="2">5) <input type="text" class="ex_textfield" id="5" tabindex="5" name="solution5_1" value="" size="6" /> the cat <input type="text" class="ex_textfield" id="5" tabindex="5" name="solution5_2" value="" size="6" /> on the wall in the mornings? <b><i>(to sit)</i></b></td></tr> <tr><td colspan="2">6) <input type="text" class="ex_textfield" id="6" tabindex="6" name="solution6_1" value="" size="6" /> Nina <input type="text" class="ex_textfield" id="6" tabindex="6" name="solution6_2" value="" size="6" /> computer games? <b><i>(to play)</i></b></td></tr> <tr><td colspan="2">7) <input type="text" class="ex_textfield" id="7" tabindex="7" name="solution7_1" value="" size="6" /> your parents <input type="text" class="ex_textfield" id="7" tabindex="7" name="solution7_2" value="" size="6" /> TV in the afternoon? <b><i>(to watch)</i></b></td></tr> <tr><td colspan="2">8) <input type="text" class="ex_textfield" id="8" tabindex="8" name="solution8_1" value="" size="6" /> your grandmother <input type="text" class="ex_textfield" id="8" tabindex="8" name="solution8_2" value="" size="6" /> the phone? <b><i>(to answer)</i></b></td></tr> <tr><td colspan="2">9) <input type="text" class="ex_textfield" id="9" tabindex="9" name="solution9_1" value="" size="6" /> Andy <input type="text" class="ex_textfield" id="9" tabindex="9" name="solution9_2" value="" size="6" /> the shopping? <b><i>(to do)</i></b></td></tr> <tr><td colspan="2">10) <input type="text" class="ex_textfield" id="10" tabindex="10" name="solution10_1" value="" size="6" /> Garry and Ken <input type="text" class="ex_textfield" id="10" tabindex="10" name="solution10_2" value="" size="6" /> a cup of tea in the afternoon? <b><i>(to have)</i></b></td></tr> </table> </td> </tr> <tr><td height="1"><hr></td></tr> <tr> <td align="left"><input class="small_button" type="submit" name="check_solutions" value="Check" />    <input class="small_button" type="submit" name="show_solutions" value="Show answer" /> 
  3. الحمد لله والصلاة والسلام على رسول الله   السلام عليكم ورحمة الله وبركاته   سنقوم بإذن الله بوضع الدروس تبعاً لإنهاء الدورة , وإن كان هناك أي تعليق أو إستفسار على أي جزئية من الدروس يرجى وضعها كتعليق في نفس الدرس    * إرسال المتغيرات عبر صفحات الموقع   هذا الدرس ضمن سلسة دروس الدورة التالية لتعلم لغة php ! كثيراً ما نحتاج في الموقع لإرسال قيم المتغيرات من صفحة لصفحة أخرى داخل الموقع فهناك طرق عديدة لإرسال البيانات بين الصفحات سنتناول منها  إرسال البيانات من خلال الروابط أو إرسال البيانات من خلال النماذج أولاً: إرسال البيانات عبر الروابط : كثيراً ما نرى الروابط بهذا الشكل : http://www.google.com/index.php?id=12230&page=send&sd=t3ttما يهمنا من الرابط هو ما بعد اسم الصفحة index.php فبعدها هناك الرمز ? ثم تأتي المتغيرات التي نريد نقلها على سبيل المثال نريد نقل معرف الشخص id واسمه name لصفحة أخرى يكون الرابط كالتالي : ?id=31&name=ahmedفبعد العلامة ? يأتي اسم المتغير ثم علامة الإسناد = ثم قيمة المتغير المراد نقلها وتأتي العلامة & للفصل بين عدة متغيرات نريد إرسالها بين الصفحات كيف لي أن أجلب قيم المتغيرات من الروابط ؟ $_GET توفر لغة php متغيرات عامة كـ $_GET للحصول على قيم المتغيرات من الروابط فعلى سبيل المثال نريد الحصول على قيمة المعرف id والاسم name من الرابط السابق يكون كالتالي : <?php$id = $_GET['id'];$name = $_GET['name'];echo $id.'-'.$name;?>فداخل الأقواس المربعة [] لـ $_GET يتم وضع اسم المتغير المراد جلب قيمته بين علامتي إقتباس زوجية أو فردية , ففي الكود السابق تم اسناد قيمة المتغير id الموجودة في الرابط للمتغير $id واسناد قيمة المتغير nmae الموجود في الرابط للمتغير $name وتم طباعتة القيم التي تحتويها هذه المتغيرات قم بحفظ الكود السابق داخل صفحة ولتكن باسم get.php وقم بالدخول عليها , لا تقلق من رسائل الخطأ التي ستظهر فسيتم شرح سبب ظهورها الآن قم بكتابة الكود التالي بعد اسم الصفحة في شريط العنوان في المتصفح وإضغط على زر enter : ?id=200&name=Mostafaغير قيم المتغيرات لتجربة الكود ماذا لو قمت بتغيير اسم المتغير نفسه ؟ سينتج خطأ عدم التعرف على المتغير في الرابط وهو ما ظهر عند فتح الصفحة أو مرة لعدم وجود قيم في الرابط ولتلاشي هذه الأخطاء يمكننا استخدام دالة isset للتعرف على وجود المتغير في الرابط من عدمه ويصبح الكود على الشكل التالي : <?php$id = '';$name = '';if(isset($_GET['id']))    $id = $_GET['id'];if(isset($_GET['name']))    $name = $_GET['name'];echo $id.'-'.$name;?>يعتبر المتغير $_GET عبارة عن مصفوفة , فمن يذكر معنا دالة foreach ؟ سنقوم الآن بطباعة محتويات المصفوفة $_GET بإستخدام دالة foreach كالتالي : <?phpforeach($_GET as $key=>$value){    echo $key.'='.$value.'<br>';}?>والآن سنقوم بعمل موقع بسيط متعدد الصفحات بإستخدام اللغة الهيكلية HTML ولغة التنسيق css والتالي رابط تنزيل هذا الموقع : site1.zip والتمرين المطلوب منك الآن هو تغيير اسم احد الصفحات وعليه تقوم بتغيير الروابط التي تشير لهذه الصفحة , ماذا ستلاحظ ؟ ستلاحظ أنه بعد تغيير اسم الصفحة فأنت مضطر لتغيير الرابط الذي يشير لهذه الصفحة في جميع الصفحات :(  , فما بالك لو لديك موقع من 1000 صفحة  :wacko:  , أعلم أن هناك بعض البرامج تقوم بعملية إستبدال النصوص في عدة ملفات دفعة واحدة وإحتجت لهذا الأمر عندما كنت أصمم مواقع كلاسيكية بدون الإعتماد على لغة برمجية , الأمر كان مرهق حقاً . ولكن مع لغة php فالأمر بسيط , توفر لغة php دالة باسم include أي تضمين وظيفتها تضمين صفحة ضمن صفحة أخرى , والآن سنقوم بوضع كود محتوى الصفحة فقط داخل الصفحات وسنكتفي بوضع الـ header والـ footer في الصفحة الرئيسية index-page.php فقط وسنقوم بتغيير الروابط في الصفحة الرئيسية لتصبح بهذا الشكل - كما تم شرحة في استخدام $_GET - : <div class="header">    <a href="index-page.php"> الرئيسية </a>    <a href="index-page.php?page=about-site"> عن الموقع </a>    <a href="index-page.php?page=news"> الأخبار </a>    <a href="index-page.php?page=new"> جديد الموقع </a>    <a href="index-page.php?page=contactus"> للإتصال بنا </a></div>ويصبح كود تضمين محتوى الصفحات في الصفحة الرئيسية هو : <div class="content">    <?php        if(isset($_GET['page']))        {            include($_GET['page'].'.php');        }        else        {            echo '<h1> محتوى الصفحة الرئيسية </h1>';        }    ?></div>والتالي رابط تنزيل الملف بعد التعديلات : site2.zip   ملاحظة : هناك دوال أخرى للتضمين كـ include_once أي تضمين الملف مرة واحدة فقط إذا كان هناك نسخة أخرى مضمَّنة من نفس الملف فإستخدام include تسبب أخطاء التضمين المتتالي لنفس الملف أي الدخول في حلقة مغلقة لعملية تضمين الملف إذا تم تضمين الملف داخل نفسه أو شئ من هذا القبيل ,  ودالة  require تعني أن هذا الملف مطلوب للإستمرار في معالجة باقي الكود وإلا لا يتم تنفيذ باقي الكود ويتم الخروج بعكس دالة include فيصدر خطأ عدم تضمين الملف ويتم معالجة باقي الكود , وهناك أيضاً دالة require_once على غرار دالة include_once . ولكن قيم متغيرات الروابط كما نعلم يمكن تغييرها من خلال الرابط مما يجعل الرابط عرضة لتضمين ملفات خارجية وهو ما يعرف بثغرة RFI  :ph34r:  ولكن في نسخ php الحالية فالضبط الإفتراضي يمنع تضمين ملف خارجي من خادم أخر , وهناك أيضاً ثغرة تعرف بـ LFI وهي الوصول لتشغيل ملف ما على جهاز الخادم للحصول على بيانات ما أو تعديل ملف ما ومن خلال هذه الثغرة يمكن التحكم الكامل بجهاز الخادم , ولتلاشي هذه الثغرة إما أن تقوم بفلترة القيم التي يتم جلبها من الروابط أو تضمين ملفات بالإعتماد على قيمة متغير في الرابط وليكن المعرف id وعلى هذا تصبح الروابط السابقة على النحو التالي : <div class="header">    <a href="index-page.php"> الرئيسية </a>    <a href="index-page.php?id=1"> عن الموقع </a>    <a href="index-page.php?id=2"> الأخبار </a>    <a href="index-page.php?id=3"> جديد الموقع </a>    <a href="index-page.php?id=4"> للإتصال بنا </a></div>والكود الخاص بتضمين الصفحات سيكون على الشكل التالي : <div class="content">    <?php        if(isset($_GET['id']))        {            switch($_GET['id'])            {                    case '1':                        include('about-site.php');                        break;                    case '2':                        include('news.php');                        break;                    case '3':                        include('new.php');                        break;                    case '4':                        include('contactus.php');                        break;                    default:                        echo '<h1 style="color:#F00;"> معرف صفحة خاطئ </h1>';            }        }        else        {            echo '<h1> محتوى الصفحة الرئيسية </h1>';        }    ?></div>وهذا رابط تنزيل الملف بعد التعديلات : site3.zip ومن ملاحظتنا نجد أن اسم الصفحة أو الـ title دائماً هو "الصفحة الرئيسية" , أترك لكم هذا لتغييره ليعبر عن محتوى كل صفحة بنفس الطريقة السابقة ملاحظة : توجد طرق أخرى لعملية تضمين الملفات منها أن يوضع راس الصفحة في صفحة منفصلة وأيضاً تززيل الصفحة وقائمة الروابط كلاً في صفحة منفصلة وتتم عملية تضمين هذه الصفحات ضمن صفحات الموقع وفي حال التعديل على أي من هذه الصفحات هو بمثابة التعديل على الموقع ككل . ارسال المتغيرات عبر النماذج : - النماذج في HTML هي وحدات لجلب البيانات من المستخدمين وكأمثلة عليها : عمليات تسجيل الدخول و تسجيل مستخدم جديد وتحتوي على العديد من عناصر الإدخال والإختيار على حسب الحاجة . - أهم خصائص وسم النموذج form هي خاصية الـ action وقيمته تكون مسار ملف معالجة البيانات المرسلة من النموذج والخاصية method وهي نوع الإرسال إما POST أو GET وغالباً ما تستخدم الطريقة POST والفرق بينها وبن GET هي أن الطريقة POST تستخدم مع البيانات كبيرة الحجم . - يتم ارسال التعرف على عناصر النموذج المرسلة من خلال خاصية الاسم name ولجلب البيانات المرسلة في ملف المعالجة نستخدم المتغير المعرف مسبقاً في php وهو $_POST وهو عبارة عن مصفوفة تحتوي على البيانات المرسلة من النموذج . والتالي نموذج به اسم المستخدم وكلمة المرور وذر لإرسال البيانات : <form action="submit.php" method="POST">                <label>اسم المستخدم :</label>                <input type="text" name="username"><br>                <label>كلمة المرور : </label>                <input type="password" name="password"><br>                <input type="submit" value="أدخل القيم"></form>- ملف معالجة البيانات هو submit.php ونوع الإرسال هو POST - الوسم input هو أحد الوسوم الخاصة بوسم الـنموذج ولا يحتاج لوسم إغلاق ومن خواص هذا الوسم النوع type وهو نوع الحقل والخاصية name وهي اسم الحقل والذي من خلاله نستطيع جلب البيانات لهذا الحقل من ملف المعالجة . - قمنا بعمل حقلين أحدهما من النوع text أي نص والأخر نوعه password أي حقل كلمة مرور - والحقل الأخير من نوع submit أي ذر إرسال البيانات لملف المعالجة وبه الخاصية value وهي القيمة التي تظهر على الذر ويمكن إستخدام هذه الخاصية للحقول السابقة لوضع قيم إفتراضية للحقول . -داخل ملف المعالجة submit.php سنضع الكود التالي لطباعة القيم الموجودة في المصفوفة $_POST : <?phpforeach($_POST as $key=>$value){        echo $key.': '.$value.'<br>';}?>- والتالي رابط تنزيل ملف التطبيق السابق : site4.zip - غير اسماء الحقول والقيم المدخلة وضع المزيد من عناصر النموذج form للتعرف عليها وكيفية جلب البيانات منها - والمثال التالي لمجموعة مختلفة من عناصر النموذج : site5.zip - طبعاً هذه البيانات التي يتم طباعتها في ملف المعالجة من المفترض أن يتم تخزينها في وسيط ما للإستفادة منها كقواعد البيانات أو الملفات وسيأتي الحديث عن هذا لاحقاً بإن الله تعالى . * التمرين : - قم بإنشاء صفحة باسم page1.php وضع بها رابط به خمس متغيرات عند الضغط عليه يتم الإنتقال للصفحة page2.php وطباعة قيم هذه المتغيرات كل قيمة في سطر جديد . - قم بإنشاء نموذج تسجيل يحتوي على الاسم ورقم الهوية ورقم الهاتف والبريد الإلكتروني ومربع للموافقة على الشروط ويتم طباعة هذه البيانات في صفحة معالجة البيانات فقط في حالة أن المستخدم وافق على الشروط وإلا لا يتم طباعة أي شئ .   * تمارين متقدمة : - قم بعملية تحقق لقيم المدخلات السابقة وإظهار رسالة للمستخدم لتنبيهه للخطأ - على سبيل المثال التأكد من أن القيمة المدخلة في حقل البريد الإلكتروني هي عبارة عن عنوان بريد إلكتروني صحيح وأن حقل رقم الهاتف عبارة عن أرقام فقط وهكذا ...   الدرس السابق | الإنتقال للموضوع الأساسي
  4. السلام عليكم .. الأخوة الأعزاء تراني ضايع مع هالشكل مسائل:   int x= 5, y=2, k=5, m=1;k/= m * x++ - ++ ycout << x << " " << y << " " << k << " " << m << endl; :( يا ريت يقدر أحد يشرح لي بشكل مبسط k/= m * x++ - ++ y هذا شنو هالبلوة :( السكرين يطلع 6 3 2 1بس شلون حسبها هالبرنامج والله ما ني عارف شيء :( ترى شوي وابجي <_< لأن بعد 4 ساعات عندي mid term ال++ أو -- عندما نضعها في الخلف لا أرى أي مشكلة ولكن حين نضعها في الأمام تدور بي الدوائر.. ولا أعرف راسي وين حاطه خذ مثلاً هذا المثال:   int x, y=3, z=5;int a=3;x = 21 $ z; z+= 4;int w=y++;int b= --acout<< x << " " << y << " " << z << "\n" << w << " " << a << " " << b << endl;النتيجة تطلع كذا   1 4 93 2 2لكن شلون؟؟ يعني x معروفة لأن باقي القسمة = 1 بس y = 3 ليش تطلع أربعة :( وال z بعد سهلة لأن مجموعة بأربعة بتطلع 9 أما ام w شلون صارت 2 مو المفروض اتزيد بواحد عساس اتكون 4 لأنها تساوي y++ يعني 3+1 :( أنتظر ردودكم الله يحفظكم