PDA

View Full Version : انتقال پارامترهایی از یک صفحه به صفحه دیگه



mostafa_tak2000
جمعه 24 آذر 1391, 23:12 عصر
سلام دوستان
بنده میخوام به عنوان مثال وقتی کاربر برروی تیتر خبر کلیک کرد کد خبر به صفحه دیگه که شرح خبر در آن هست منتقل شده و پس از اتصال به بانک شرح خبر نمایش داده بشه . البته من از session استفاده میکنم ولی فکر کنم راه عاقلانه ای نیست . با سپاس از همگی

malloc
جمعه 24 آذر 1391, 23:15 عصر
کووری استرینگ باید بزنی
حالا اگه کوروی استرینگ بلد نیستی توضیح بدم؟

malloc
جمعه 24 آذر 1391, 23:17 عصر
اتفاقا منم دارم تو سایتم اخبار میزارم .
من کد زیر و زدم ببین متوجه میشی.

string QueryString = "~/Pages/FullNews.aspx?";
QueryString += "ID=" + (DataList1.Items[e.Item.ItemIndex].FindControl("lblID") as Label).Text;
Response.Redirect(QueryString);

ahmad_lovely
جمعه 24 آذر 1391, 23:18 عصر
با سلام
شما می تونید از کوئری استرینگ استفاده کنید، به این صورت که

<a href="details.aspx?id=50"></a>این یک کوئری استرینگ با نام آی دی می سازه و مقدار 50 را درون اون قرار میده، پس از اینکه صفحه ی جدید لود شد شما می توانید با کد زیر به مقدار دسترسی پیدا کنید

Request.Querystring["id"]

mostafa_tak2000
شنبه 25 آذر 1391, 08:52 صبح
اتفاقا منم دارم تو سایتم اخبار میزارم .
من کد زیر و زدم ببین متوجه میشی.

string QueryString = "~/Pages/FullNews.aspx?";
QueryString += "ID=" + (DataList1.Items[e.Item.ItemIndex].FindControl("lblID") as Label).Text;
Response.Redirect(QueryString);

دوست عزیز میشه توضیح بدی که مقدار ID را از کجا داره دریافت میکنه ؟ وچطوری داره ID خبر را به صفحه نمایش خبر هندل میکنه ؟ درواقه کمی خطوط دستورا را توضیح بدی . با تشکر

samira3
شنبه 25 آذر 1391, 09:44 صبح
سلام
حتما تا حالا به آدرس دقت كرديد يك علامت سوال داره بعد هم كد
ابتدا شما با كليك خبر بايد با يك كوئري يا و.... كد خبر استخراج مي كنيد بعد هم آدرس مي سازه
string QueryString = "~/Pages/FullNews.aspx?"; اين كد آدرس پايه آدرس
قسمت بعدي ادي خبر استخراج كرديم به آدرس ما وصل مي كنه
دستور آخر هم پرش صفحه است



در لود صفحه نمايش خبر هم
Request.Querystring["id"]
كد خبر فرستاد شده استخراج شده با يك كوئري به فيلدهاي ديگه خبر دسترسي داريم

اميدوارم خوب توضيح داده باشم.

AmirGhasemi
شنبه 25 آذر 1391, 17:02 عصر
سلام اساتيد
حالا من هم يه سوال دارم
من براي پاس كردن اطلاعات از كوئري استرينگ استفاده مي كنم اما مي خواهم كه اين كوئري در آدرس بار براوزر نمايش داده نشه اصطلاحا رشته ام را بازنويسي كنم
اگه ميشه راهنمايي بفرماييد...

sanay_esh
شنبه 25 آذر 1391, 17:32 عصر
با سلام خدمت دوستان

برای ارسال اطلاعات مهم و سری نباید از کوئری استرینگ یا حتی سشن استفاده کرد ( راههای بهتری برای انتقال داده بین صفحات است . اگر خواستید میتوانید حدالامکان از سشن استفاده نمائید )

در صورتی که می خواهید url rewriting داشته باشید باید بگم کمی جستجو کنید بالای 100 تا تاپیک براتون پیدا میشه که توضیح داده چیکار کنید

malloc
شنبه 25 آذر 1391, 18:38 عصر
دوست عزیز میشه توضیح بدی که مقدار ID را از کجا داره دریافت میکنه ؟ وچطوری داره ID خبر را به صفحه نمایش خبر هندل میکنه ؟ درواقه کمی خطوط دستورا را توضیح بدی . با تشکر
دوست من ID یه چیزیه که همونجا تعریف شده و تو صفحه مقصد قابل دسترسیه.
عملا اینو شما تو صفحه مبدا مینویسی و تو صفحه مقصد مقدار ID رو به روش زیر بدست میاری :

string s = request.querystring["ID"].tostring;

خوب حالا توضیح کد ها.
خط اول یه متغیره که مشخص میکنه به کدوم صفحه باید برم.اون علامت ؟ که آخر گذاشتم باید باشه یحورایی قانون کووری استرینگه.
خط دوم برای اینه که من اول یه ID تعریف میکنم بعد میگم ID برابر چی باشه (که تو این مثال برابر مقدار lblID هست که من از دیتالیست میخونم)
خط آخر که کارش معلومه.