الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما الخطأ في هذا الكود؟؟!

بدأه الحذر في 24 أكتوبر 2008 · 8 رد · 522 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله و بركاته

وجهتني مشكلة صراحة انا مستغرب منها

ان المتغيرات ما تترسل من صفحة الى صفحة اخر عندما اتصفح المشروع عن طريق الانترنت

لكن عند تصفحي للمشروع على الجهاز تترسل المتغيرات

مثال:

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

هذا الكود الي راح يرسل المتغير الى الصفحة الاخر

<?

	   echo"
	  </br></br></br></br></br>
	 <p align=center>
	 <form action='m.php' method='get'>
	 <input type='text' name='a'>	</br>

	 <input type='submit' value='ارسل'>
	 </p>
	 ";

?>

هذا الكودد الي راح يطبع قيمة المتغير على الشاشة

<?

   echo "a= "; echo $a;
?>

لكن النتيجة انه عند رفع هذي الصفحات على الانترنت لا يطبع قيمة المتغير؟؟؟؟؟؟؟ :S

بصراحة انا جتني حالة وسوسة - الله يبعدها عندكم

والسلام عليكــم ورحمـة الله وبركاتــة

تم تعديل هذه المشاركة بواسطة الحذر في 25 أكتوبر 2008 في 03:11

I_can_always_make_you_smile_by_Praerion.jpg

#2

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

على الجهاز الشخصي يوجد سيرفر مثبت عليه php4 و بالتالي يعمل الكود

أما على الإنترنت يوجد سيرفر عليه php5

حتى يعمل الكود على php5 يجب استبدا تاج البداية و كتابته دوماً

 <?php

بدل من

<?

جرب و أخبرني

و شي آخر أخي الكريم يرجى كتابة الكود بشكل واضح لأتأكد منه اكثر لأني لم أفهمه و هو مكتوب بهذا الشكل فربما يوجد خطأ بالكود أيضاً

تقبل تحياتي

تم تعديل هذه المشاركة بواسطة محمد ديوب في 24 أكتوبر 2008 في 23:38

#3

الان ان شاء الله الكد موضح

صدقت انا استخدم php 4 على جهازي

راح اجرب و احط php بعد علامة الاستفهام

و ارد لك خبر

I_can_always_make_you_smile_by_Praerion.jpg

#4

قبل طباعة القيمة

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

$aa=$_POST['a'];

echo $aa;

#5

الي اسكشفته من التجربة

عند استخدام الموقع في الجهاز localhost :

اني لما ارسل المتغير الى الصفحة الثانية لازم اني استدعي المتغير عادي مثل هذا الكود.

echo "a= "; echo $a;

و عند رفع الموقع الى الانترنت:

عند ارسال المتغير الى الصفحة الثانية ، يجب استدعاء المتغير بالدالة الي ذكرها اخوي رفقية السكون.

$aa=$_POST['a'];
echo $aa;

I_can_always_make_you_smile_by_Praerion.jpg

#6

الي اسكشفته من التجربة

عند استخدام الموقع في الجهاز localhost :

اني لما ارسل المتغير الى الصفحة الثانية لازم اني استدعي المتغير عادي مثل هذا الكود.

echo "a= "; echo $a;

و عند رفع الموقع الى الانترنت:

عند ارسال المتغير الى الصفحة الثانية ، يجب استدعاء المتغير بالدالة الي ذكرها اخوي رفقية السكون.

$aa=$_POST['a'];
echo $aa;

هل من تفسير؟!!!!!!!!!!!!

تم تعديل هذه المشاركة بواسطة الحذر في 25 أكتوبر 2008 في 17:13

I_can_always_make_you_smile_by_Praerion.jpg

#7

لايمكن استدعاء متحول من صفحة ثانية إلا إذا كان global أو مرسل بالمصفوفات الشهيرة get, post

تم تعديل هذه المشاركة بواسطة خالد_الحوراني في 25 أكتوبر 2008 في 18:56

#8
اقتباس
لايمكن استدعاء متحول من صفحة ثانية إلا إذا كان global أو مرسل بالمصفوفات الشهيرة get, post
مثل ما قال الأخ خالد و لكن يفضل استعمال مصفوفات post و get لأنها أكثر أماناً من global

و إذا كنت لا تعرف الفرق بين post و get سأعطيك مثال

المصفوفة get يتم ارسالها عبر عنوان الموقع مثال :

http://www.xxxx.com/index.php?g=dioub

و يتم استقبالها بالطريقة التالية :

$dioub = $_GET['g'];

و أظن حسب ما أذكر أنه لا يمكن ارسال أكثر من 1000 حرف ضمنها أو 500 لا أذكر بالضبط

أما المصفوفة POST

لا تكتب في شريط العنواين و تستطيع أن تكتب بها حروف قدر ما تشاء و تستقبل بالطريقة التالية :

$dioub = $_POST['g'];

أتمنى أن تكون مشكلتك قد حلت و لأي مساعدة الجميع هنا موجود و جاهز لمساعدتك

تم تعديل هذه المشاركة بواسطة محمد ديوب في 25 أكتوبر 2008 في 22:47

#9

مشكورين على المساعدة

المشكلة اني لما كنت ابرمج مشروعي على الlocalhost صحيح اني استخدم method post اة method get

لكن عن استدعاء القديمة لا استعمل POST_$ او GET_$

بل كنت استدعيها عادي جدا اني اقول

z=a$

هذا فقط الي جنني

و هذا الي راح يخليني اعدل في الاكواد شوي

خخخخ

I_can_always_make_you_smile_by_Praerion.jpg

مواضيع مشابهة