سایت ساز وبزیکسب درآمد

يه مشكل با ارسال اطلاعات فرم به ديتابيس

شروع موضوع توسط natanail2001 ‏2 آپریل 2007 در انجمن PHP

  1. natanail2001

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

    تاریخ عضویت:
    ‏6 ژانویه 2006
    نوشته ها:
    69
    تشکر شده:
    0
    روي لوكال تست ميكنم. كار ها خوب پيش ميره اما وقتي صفحه رو refresh ميكنم آخرين اطلاعاتي كه با submit كردن به ديتا بيس اضافه كردم دوباره اضافه ميشن(هر چند بار كه refresh كنم) بدون اينكه حتي فيلدي پر باشه.
    كد php تو همون صفحه فرمه. $_POST با referesh كردن خالي نميشه . unset هم كردم فايده نداشت. نمي دونم شايد بايد cache رو غير فعال كنم. اين همه اون چيزي بود كه به ذهنم ميرسيد.:D
    لطفا راهنمايي كنيد.
    ممنونم.
     
  2. بازدیدیار - افزایش بازدید سایت و سیگنال های برندخرید بک لینک
  3. peymanafraz

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

    تاریخ عضویت:
    ‏28 دسامبر 2005
    نوشته ها:
    135
    تشکر شده:
    0
    محل سکونت:
    $strHome
    دوست عزيز اين يه قانونه و البته يکي از مزاياي متد Post نسبت به Get هست که وقتي صفحه رو ارسال کردي اگر Refresh کني پيغامي بهت داده ميشه که اطلاعات فرستاده شده بايد دوباره فزستاده بشن و خود به خود کار ارسال مجدد رو انجام نميده. پس اين چيزي نيست که شما بخواين غيرفعالش کنين.
    البته راههايي براي گذشتن از اين مشکل وجود داره مثلا ميتونين اطلاعات رو به يه صفحه ديگه که کارش فقط افزودن اطلاعات به ديتابيس هست بفرستين و بعد از اضافه کردن اطلاعات کاربر رو با هدر به صفحه فرم برگردونين در اينصورت ديگه با رفرش اطلاعات دوباره فرستاده نميشن.
     
  4. natanail2001

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

    تاریخ عضویت:
    ‏6 ژانویه 2006
    نوشته ها:
    69
    تشکر شده:
    0
    خيلي ممنونم. ميشه اين قسمت رو بيشتر توضيح بديد؟

     
  5. سیب موز

    سیب موز کاربر تازه وارد

    تاریخ عضویت:
    ‏20 فوریه 2007
    نوشته ها:
    61
    تشکر شده:
    0
    محل سکونت:
    اون ور تر
    دوست عزیز شما باید یک صفحه درست کنید
    مثلا db.php
    توی این صفحه با سرور و دیتا بیس ازتباط برقرار می کنی
    بعد اطلاعاتت رو توی دیتا بیس اضافه می کنی
    بعد دستور زیر رو بعد از این نوشته ها می نویسی
    header("Location: aaa.php);
    به جای aaa.php
    باید اسم فایلت رو بزاری
    البته این رو به یاد داشته باش که قبل از این دستور نباید هیچ اطلاعاتی برای نمایش به صفحه فرستاده بشه مثل عنوان صفحه و از این چیز ها حتی یک نقطه هم قبل از این دستور ارسال شود پی اچ پی ارور می دهد
    می تونی کمی هم مجکم کاری کنی
    یعنی
    یک دستور شرطی بزاری
    یعنی
    دستوری رو که می خواهی مقادیری رو به جدول اضافه کنی رو یک متغییر در نظر بگیر
    مثلا:
    $query=mysql_query("insert into pm (`id`, `name`) VALUES ('', '$name')");
    if (!$query) echo "Your name not send ";
    else header("Location: aaa.php);
    در این مثال اگر اطلاعات وارد دیتا بیس شدن صفح هدر پیدا می کنه یعنی بر میگرده به حالت قبلی ولی اگر اطلاعات وارد دیتا بیس نشدن یک نوشته می اید و به آنها اطلاع می دهد که اطلاعات وارد دیتا بیس نشد و می تونی توی اون نوشته یک لینک هم برای هدایت کاربر به صفحه ارسال مجدد بفرستی
     
  6. میلاد

    میلاد کاربر فعال

    تاریخ عضویت:
    ‏7 ژوئن 2005
    نوشته ها:
    1,802
    تشکر شده:
    4
    محل سکونت:
    Esfahan
    فکر میکنم اگه کد هایی که توی فروم قرار میدین بین تگ های PHP یا CODE باشه خیلی بهتره.
     
  7. علی آبادانی

    علی آبادانی Registered User

    تاریخ عضویت:
    ‏30 اکتبر 2006
    نوشته ها:
    897
    تشکر شده:
    11
    محل سکونت:
    Abadan
    منم همین مشکل رو دارم یه فرم دارم که وقتی اطلاعات رو وارد میکنیم و submit میزنیم صفخه cannot page میاد و باید یه بار رفرش کنی وقتی هم که رفرش میکنی یه سطر اطلاعات خالی میزاره توی phpmyadmin و مجبورم برم ازاونجا پاکش کنم که یه ستون خالی توی خبرهام نداشته باشم
    مشکل منم با همین موضوع رفع میشه؟
     
  8. firebird

    firebird Registered User

    تاریخ عضویت:
    ‏2 جولای 2005
    نوشته ها:
    1,424
    تشکر شده:
    10
  9. hoomansoft

    hoomansoft Registered User

    تاریخ عضویت:
    ‏2 مارس 2006
    نوشته ها:
    186
    تشکر شده:
    0
    مي شه سورسش را بزاريد؟
     
عسل طبیعی و گرده گل ایرانیخرید و فروش اتوماتیک ارزهای الکترونیکی