PDA

View Full Version : سوال: حل مشکل حذف شدن مقادیر input فرم ها در php



130000
دوشنبه 09 دی 1398, 08:11 صبح
سلام و درود خدمت اساتید محترم

دوستان من به تازگی php رو شروع کردم و میخوام مقادیر input ها با با زدن دکمه submit از بین نره.

اما من مشکلم رو با استفاده از آرایه SESSION_$ حل کردم. اما میخوام بدونم راه دیگه ای هم وجود داره؟ اگه بله لطفا با ذکر مثال راهنمایی بفرمایید.

پیشاپیش سپاس از پاسختون.

ASHKANLAEI
دوشنبه 09 دی 1398, 08:17 صبح
دوست عزیز به چه دلیل این کار رو انجام میدین؟
اگر برای راحتی کار کاربران هست، خود مرورگر ها مقادیر رو با توجه به خواستۀ کاربر ذخیره میکنند.
گاهی مواقع هم نمیخواین که از اون صفحه برین بیرون و این کار رو انجام میدین که مقادیر و صفحه ثابت بمونن.
در این صورت اصلاً نیازی به submit ندارین. میتونین از یک button معمولی استفاده کنید و از AJAX برای ارسال اطلاعات.
البته این رو بخاطر سوال قبلی تون نوشتم.

parsboy
دوشنبه 09 دی 1398, 08:32 صبح
سلام و درود خدمت اساتید محترم

دوستان من به تازگی php رو شروع کردم و میخوام مقادیر input ها با با زدن دکمه submit از بین نره.

اما من مشکلم رو با استفاده از آرایه SESSION_$ حل کردم. اما میخوام بدونم راه دیگه ای هم وجود داره؟ اگه بله لطفا با ذکر مثال راهنمایی بفرمایید.

پیشاپیش سپاس از پاسختون.
باسلام
اگر مقادير حائز اهميت هستتند بريزيد تو يك متغيير و ذخيرش كنيد اگر نه ميتونيد پاس بديد به جاي ديگه

mohsen.lion
دوشنبه 09 دی 1398, 08:38 صبح
سلام دوست عزیز type ارسال مقادیر را تغییر بهی شاید درست بشود ولی اگر نشد مقادیر ورودی ها را ذخیره و دوباره در ان ورودی قرار بدهید.

130000
دوشنبه 09 دی 1398, 08:38 صبح
ممنون از پاسختون

به خاطر سوال قبلی هم نباشه بلاخره جایی به کارم میاد. مثلا تو فرم عضویت اگه کاربری مقداری رو اشتباه وارد کنه کلا اطلاعات وارد شده پاک میشه و کاربر اگر بی حوصله باشه قید عضویت رو میزنه. و یک کاربر از دست میره... درسته که مرورگرها اطلاعات رو ذخیره میکنند اما افراد حرفه ای اینو میدونن و افراد مبتدی اطلاع ندارند.

130000
دوشنبه 09 دی 1398, 08:39 صبح
دوست عزیز به چه دلیل این کار رو انجام میدین؟
اگر برای راحتی کار کاربران هست، خود مرورگر ها مقادیر رو با توجه به خواستۀ کاربر ذخیره میکنند.
گاهی مواقع هم نمیخواین که از اون صفحه برین بیرون و این کار رو انجام میدین که مقادیر و صفحه ثابت بمونن.
در این صورت اصلاً نیازی به submit ندارین. میتونین از یک button معمولی استفاده کنید و از AJAX برای ارسال اطلاعات.
البته این رو بخاطر سوال قبلی تون نوشتم.

ممنون از پاسختون

به خاطر سوال قبلی هم نباشه بلاخره جایی به کارم میاد. مثلا تو فرم عضویت اگه کاربری مقداری رو اشتباه وارد کنه کلا اطلاعات وارد شده پاک میشه و کاربر اگر بی حوصله باشه قید عضویت رو میزنه. و یک کاربر از دست میره... درسته که مرورگرها اطلاعات رو ذخیره میکنند اما افراد حرفه ای اینو میدونن و افراد مبتدی اطلاع ندارند.

130000
دوشنبه 09 دی 1398, 08:41 صبح
سلام دوست عزیز type ارسال مقادیر را تغییر بهی شاید درست بشود ولی اگر نشد مقادیر ورودی ها را ذخیره و دوباره در ان ورودی قرار بدهید.

آره با استفاده از سشن همین کارو کردم اما خواستم ببینم که روش دیگه ای وجود داره.

130000
دوشنبه 09 دی 1398, 08:48 صبح
یک روش دیگه هست که من متوجه منظورش نشدم لینکش رو میزارم متوجه شدید بهم بگید ممنون.

https://clicksite.org/articles/PHP/%D8%AC%D9%84%D9%88%DA%AF%DB%8C%D8%B1%DB%8C_%D8%A7% D8%B2_%D9%BE%D8%A7%DA%A9_%D8%B4%D8%AF%D9%86_%D8%A7 %D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA_%D9%81%D8%B1% D9%85_%D8%AF%D8%B1_PHP_%D9%BE%D8%B3_%D8%A7%D8%B2_S ubmit

ASHKANLAEI
دوشنبه 09 دی 1398, 08:53 صبح
یک روش دیگه هست که من متوجه منظورش نشدم لینکش رو میزارم متوجه شدید بهم بگید ممنون.

https://clicksite.org/articles/PHP/%D8%AC%D9%84%D9%88%DA%AF%DB%8C%D8%B1%DB%8C_%D8%A7% D8%B2_%D9%BE%D8%A7%DA%A9_%D8%B4%D8%AF%D9%86_%D8%A7 %D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA_%D9%81%D8%B1% D9%85_%D8%AF%D8%B1_PHP_%D9%BE%D8%B3_%D8%A7%D8%B2_S ubmit
این لینک همون روش رو توضیح داده که فرم شما به خود صفحه برمیگرده و از php و post استفاده کرده یعنی شما فرمتون رو به هر جا ارسال میکنید اونجا از $_POST استفاده میکنید دیگه. این منظورش اینه که شما فرمتون رو به خود صفحه برگردونید.

130000
دوشنبه 09 دی 1398, 08:55 صبح
این لینک همون روش رو توضیح داده که فرم شما به خود صفحه برمیگرده و از php و post استفاده کرده یعنی شما فرمتون رو به هر جا ارسال میکنید اونجا از $_POST استفاده میکنید دیگه. این منظورش اینه که شما فرمتون رو به خود صفحه برگردونید.

پس تنها راهش استفاده از سشن هستش.

ممنون

ASHKANLAEI
دوشنبه 09 دی 1398, 08:58 صبح
پس تنها راهش استفاده از سشن هستش.

ممنون
بله زمانی که شما با فاصله به صفحۀ خود برمیگردین استفاده از سشن مناسب ترین روش هست.
اما از لینکی که خودتون دادین هم میتونید استفاده کنید اگر اول به صفحۀ ورود برگردین و همونجا مقادیر رو چک کنید که اگر درست بود هدایت بشود یا اگر غلط بود نشود و کار هایی که در اون صفحه نوشته بود انجام شود.

130000
دوشنبه 09 دی 1398, 09:08 صبح
بله زمانی که شما با فاصله به صفحۀ خود برمیگردین استفاده از سشن مناسب ترین روش هست.
اما از لینکی که خودتون دادین هم میتونید استفاده کنید اگر اول به صفحۀ ورود برگردین و همونجا مقادیر رو چک کنید که اگر درست بود هدایت بشود یا اگر غلط بود نشود و کار هایی که در اون صفحه نوشته بود انجام شود.

متوجه منظورتون نشدم منظورتون چیه با لینک؟

من اینجوری عمل کردم ببینید.



کد های صفحه ایندکس index.php



<?php
session_start();

if (isset($_POST['text1'])){
$_SESSION["savetxt"] = $_POST['text1'];
}


?>

<form action="check.php" method="post">
<textarea name="text1"><?php echo $_SESSION["savetxt"] ; ?></textarea><br>
<input type="text" name="namberlen" value="<?php echo strlen($_SESSION["savetxt"]) ; ?>"><br>
<input type="submit">
</form>





کدهای صفحه دوم check.php





<?php
session_start();

if ($_POST['text1']!=""){
$_SESSION["savetxt"] = $_POST['text1'];
header("location:index.php");
exit();
}
else{
header("location:index.php");
exit();
}
?>

ASHKANLAEI
دوشنبه 09 دی 1398, 09:25 صبح
متوجه منظورتون نشدم منظورتون چیه با لینک؟
منظورم لینک اون مقاله ای بود که دادین.
و با روشی که شما بکار بردین (صفحه بررسی از صفحه فرم جداست) اون مقاله کاربردی نداره.

130000
دوشنبه 09 دی 1398, 09:42 صبح
اشکان جان یک دنیا ممنون بابت راهنماییت و پاسخ هایی که دادی.

ASHKANLAEI
دوشنبه 09 دی 1398, 12:38 عصر
اشکان جان یک دنیا ممنون بابت راهنماییت و پاسخ هایی که دادی.
خواهش میکنم وظیفه هست.