آژانس هواپیماییdaftare shoma
nexpay

ارسال يه آرگومان از يك فايل php به فايل php ديگر!

شروع موضوع توسط Piter1356 ‏10 جولای 2005 در انجمن PHP

  1. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    سلام
    از اينكه سوالاتم نپخته و احيانا خنده داره عذر ميخوام .[​IMG]
    هر چي باشه ما تازه كاريم ( البته تو php )
    حالا سوال من اينه كه :
    مثلا يه فايل php داريم كه در اون يه دكمه اي url مقابل رو توليد ميكنه :
    http://localhost/student/editstudent.php?id=5
    خوب اين url مياد فايل editstudent.php رو اجرا ميكنه و يه آرگومان (عدد 5) به متغيير id كه در همون فايل editstudent.php قرار داره ميفرسته.

    حالا تو فايل editstudent.php بايد چه كدي بنويسيم كه هنگام اجراشدن مقدار عدد 5 رو بگيره و به متغيير id نسبت بده ؟
    شايد نياز به انجام كار خاصي نباشه !
    و اينكه در فايل editstudent.php بايد نوع متغيير id رو تعريف كنيم يانه ؟
     
  2. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    هيچ كاري لازم نيست بكني دو تا مثال براي فايل:
    PHP:
    <?php
    //if regiter_globals is on
    echo $id// ECHOS "5"

    //if register_globals is off
    echo $_GET['id']; // ECHOS "5"
    ?>
    PHP:
    <?php
    if($id == "5"){
       echo
    " Hello";
    }
    if(
    $id == "6"){
       echo
    " GoodBye!";
    }
    فقط اینجا دو حالت داره
    اگر گزینه register_globals توی php.ini روی on تنظیم شده باشه، فقط کافیه از متغیر id$ که تو url هست استفاده کنی ولی اگه این گزینه off باشه ( که جدیدا اکثر هاست ها روی off میذارن ) باید از متغیر انجمنی استفاده کنی:
    PHP:
    $HTTP_GET_VARS['id'];
    //or 
    $_GET['id']; // This is Simpler :D
    موفق باشی
     
  3. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
  4. miladmovie

    miladmovie مدیر بازنشسته کاربر فعال

    تاریخ عضویت:
    ‏25 دسامبر 2002
    نوشته ها:
    1,936
    تشکر شده:
    2
    اگر من و سالار منظورت رو درست فهمیده باشیم بله همن کدی که نوشتی
    البته اون کد اولی که خودت نوشتی در صورتی که register_global=on باشه هم کار می کنه
     
  5. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    [​IMG]

    ممنونم


    يكي از دوستان روي هاست خودش امتحان كرد درست عمل كرد و لي تو هاست من درست عمل نكرد !

    اين موضوع ميتونه به اين معني باشه كه register_global در هاست دوستم on هستش و در هاست من off هستش.
     
  6. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    درسته , من register_global رو توی ایزی پی اچ پی به ON تغییر دادم . درست شد .

    حالا باید خط به خط همه کد ها رو اصلاح کنم
     
  7. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    اگه امکان داره این خط رو اصلاح کنید . طوریکه با register_global =on کار کنه .

    کد:
     echo "<tr bgcolor=$color><td>$id:</td><td>$question</td><td>[ <a href='editstudent.php?id=$id'>ظˆغŒط±ط§غŒط´</a> ]</td><td>[ <a href='deletestudent.php?id=$id' onClick=\"return confirm('ط¢غŒط§ ظ…غŒ ط®ظˆط§ظ‡غŒط¯ ط§غŒظ† ط§ط³ظ… ط±ط§ ظ¾ط§ع© ع©ظ†غŒط¯ طں')\">ظ¾ط§ع© ع©ط±ط¯ظ†</a> ]</td></tr>";
    البته اگه امکان داره .

    ممنون میشم
     
  8. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    اين خط به خوبي كار ميكنه!
     
  9. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
  10. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    PHP:
    echo "<tr bgcolor=$color><td>" $_GET['id'] . ":</td><td>$question</td><td>[ <a href='editstudent.php?id=" $_GET['id'] . "'>ظˆغŒط±ط§غŒط´</a> ]</td><td>[ <a href='deletestudent.php?id=" $_GET['id'] . "' onClick=\"return confirm('ط¢غŒط§ ظ…غŒ ط®ظˆط§ظ‡غŒط¯ ط§غŒظ† ط§ط³ظ… ط±ط§ ظ¾ط§ع© ع©ظ†غŒط¯ طں')\">ظ¾ط§ع© ع©ط±ط¯ظ†</a> ]</td></tr>";
    اونجاهایی رو که id باید اصلاح میشد اصلاح کردم
     
  11. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    دستت در نكنه
    ولي وقتي اون خط رو جايگزين مي كنم با خطاي زير مواجه ميشم !


    کد:
    Notice: Undefined index: id in d:\program files\easyphp1-8\www\student\editstudentlist.php on line 60
    لاين 60 همون لاينيه كه جايگزين كردم
     
  12. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    این خطا بیشتر توی ویندوز میاد و زیاد مهم نیست این خط رو توی دومین خط کدات بعد از کلمه php?> بذار ( یعنی زیرش! ):
    PHP:
    global $id;
     
  13. avajang.com .leftjee.ir.right
  14. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
  15. carp3

    carp3 کاربر تازه وارد

    تاریخ عضویت:
    ‏15 آپریل 2005
    نوشته ها:
    1,321
    تشکر شده:
    1
    اگه كارشو دست انجام ميده فقط ارور ميده كافيه كد زير رو به اول صفحه اضافه كني‌:
    PHP:
    error_reporting (E_ALL E_NOTICE);
    براي گرفتن ارسال ها به روش GET ميتوني از كد زير هم استفاده كني كه همه جا جواب ميده
    PHP:
    $id $HTTP_GET_VARS['id'];
    براي POST
    PHP:
    $id $HTTP_POST_VARS['id'];
     
  16. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    كارشو درست انجام نميده

    راستی مگه سالار نگفته بود که نیاز ی به نوشتن کد اضافه ای برای دریافت مقدار متغییر نیست !
     
  17. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    خوب مگه اینکه carp نوشته اضافیه؟
    این کار فقط برای مواقعیه که register_globals روی off هست
     
  18. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
    آخه شما فرموده بودی برای دریافت مقدار متغییر نیاز به هیچ کدی نیست .

    و دوستمون فرمودند : براي گرفتن ارسال ها به روش GET ميتوني از كد زير هم استفاده كني كه همه جا جواب ميده
     
  19. sama_sally

    sama_sally Registered User

    تاریخ عضویت:
    ‏5 آپریل 2005
    نوشته ها:
    2,598
    تشکر شده:
    1
    محل سکونت:
    Essen, Deutschland
    به اين 4 خط ميگي كد؟ :blink:
     
  20. Piter1356

    Piter1356 کاربر تازه وارد

    تاریخ عضویت:
    ‏11 اکتبر 2004
    نوشته ها:
    395
    تشکر شده:
    0
    محل سکونت:
    tehran
zarpopخرید بک لینک عسل طبیعی و گرده گل ایرانی