آژانس هواپیمایی
pop up

اين قضيه ارسال اطلاعات با متد get رو كامپيوتر من كه وب سر

شروع موضوع توسط ابی ‏3 ژوئن 2003 در انجمن PHP

  1. ابی

    ابی Registered User

    تاریخ عضویت:
    ‏29 دسامبر 2002
    نوشته ها:
    192
    تشکر شده:
    0
    محل سکونت:
    iran
    متد گت در ارسال اطلاعات به اسكريپت رو كامپيوتر من كار نميكنه
    مثلا :
    اين رو در آدرس بار بزنم وhttp://localhost/test.php?fname=name

    كدهام هم اين باشه
    [code:1]

    <html><head><title>:::Hi ebi:::</title></head>

    <body>

    <form method="post" action="handle.php">



    </form>

    Hello,=> <i><b>$fname</b></i>

    <br/><br/>----------------<br/>

    this is HTML are..

    </body>

    </html>

    [/code:1]
    جواب نميده چرا؟ :rolleyes:
     
  2. knowhow

    knowhow مدیران قدیمی

    تاریخ عضویت:
    ‏25 دسامبر 2002
    نوشته ها:
    3,480
    تشکر شده:
    19
    آقا سلام

    اولا كه شما توي صفحه ات وقتي كه از $fname استفاده می کنی ، ابتدا باید وارد php بشی یعنی تگهای شروع کننده php رو بزنی یعنی :
    [code:1]

    <؟

    و

    ؟>[/code:1]
    دوما اگه دیدی $fname خالی جواب نداد از echo $fname استفاده کن.
     
  3. alpha

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

    تاریخ عضویت:
    ‏20 دسامبر 2002
    نوشته ها:
    334
    تشکر شده:
    1
    شايد اصلا اين كد كامل نباشه . چون سر تا پا اشكاله .
    علاوه بر اشكالاتي كه گفته شده . تو مي خواي از get استفاده كني در حاليكه نوشتي post در ضمن فرمت اصلا كار نمي كنه چون اصلا كليدي نداره . و در آخر اگر يك ورودي به صورت GET مي آد بايد اينطوري استفاده كني

    [code:1]$fname=$_GET[fname];[/code:1]
    بعد حالا مي توني از اين به بعد از fname$ استفاده كني ( كه ورودي توشه )
     
  4. ابی

    ابی Registered User

    تاریخ عضویت:
    ‏29 دسامبر 2002
    نوشته ها:
    192
    تشکر شده:
    0
    محل سکونت:
    iran
    سلام ممنون از جواباتون.
    اولا عرض شود من اشتباها اين كدا رو نوشتم (اچ تي ام الشو نوشتم ) تصحيح ميكنم
    [code:1]

    <html><head><title>:::Hi ebi:::</title></head>

    <body>



    <?php

    $fname=$_GET[fname];

    Print"Hello,<i><b>$fname</b></i>n";

    ?>

    <br/><br/>----------------<br/>

    Here is empty...

    </body>

    </html>

    [/code:1]
    در كد بالا من كد fname=$_GET[fname]; كه اين دوست ما گفت رو ننوشته بودم .واسه همين كار نميكرد. ولي اين تيكه كد اصلا تو كتاب نبود و نيست . غير اين روش چه راه هاي ديگه اي داره.
     
  5. mitch

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

    تاریخ عضویت:
    ‏1 ژانویه 2004
    نوشته ها:
    83
    تشکر شده:
    0

    حق با شماست. چون اين روش دستيابي به متغيرهاي GET و POST ديگه منسوخ شده و ازش استفاده نمي‌شه. كتاب شما هم قديميه. دستيابي به اين متغييرها سه راه داره. فرض كنيد توسط فرم زير متغير username رو براي يك فايل php مي‌فرستين:


    <form action="foo.php" method="POST">
    Name: <input type="text" name="username"><br>
    <input type="submit" name="submit" value="Submit me!">
    </form>

    1. راه بد:
    استفاده از روش فوق. يعني به طور مستقيم بخواهيد كه به متغيرهاي خارج از PHP دسترسي داشته باشين. اين كار به طور پيش فرض (Default) از PHP 4.2.0 به بعد غير فعال شده. اگر مي‌خواهيد اون رو فعال كنيد كه من شديدا شما رو منع مي‌كنم عبارت register_globals رو تو فايل php.ini پيدا كنيد و اون رو به اين صورت تغيير بدين:

    register_globals = on

    مثال:

    print $username;

    2. راه قديمي:
    استفاده از متغيرهاي پيش تعريف طولاني. اين روش در عهد PHP 3 مرسوم بود. ديگه از اين روش استفاده نمي‌شه. اينم مثال:

    print $HTTP_POST_VARS['username'];

    3. راه مناسب و جديد:
    اين روش از زمان php 4.1.0 به بعد بوجود آمد. براي دستيابي به متغير username از متغير آرايه‌اي $_POST[] استفاده مي‌كنيم. مثال:

    print $_POST['username'];

    به اين متغير‌ها super global مي‌گويند. نمونه‌هاي ديگر super global ها:

    $GLOBALS
    $_SERVER
    $_GET
    $_POST
    $_COOKIE
    $_FILE
    $_ENV
    $_REQUEST
    $_SESSION