PDA

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



hgh.just.hony
چهارشنبه 03 خرداد 1391, 13:36 عصر
سلام
من میدانم که برای ارسال پارامتر این کد را مینویسیم و به این صورت پارامتر ارسالی را در صفحه دیگر میگیریم.

int a=0;
int b=1;
Response.Redirect("~/sample/WebForm2.aspx?ID1="+a+"&ID2="+b);
و برای دریافتش در صفحه دوم :
Label1.Text = Request.QueryString.ToString();

که خروجیش این است :


ID1=0&ID2=1


حال اگر پارامترم شامل حروق فارسی باشد این چنین می شود .


string a= "سلام" ;

Response.Redirect("~/sample/WebForm2.aspx?ID1="+a);
و برای دریافتش در صفحه دوم :
Label1.Text = Request.QueryString.ToString();

که خروجیش این است :


ID1=%u0633%u0644%u0627%u0645

حالا من چه جور متن فارسی را برگردونم ؟

hgh.just.hony
چهارشنبه 03 خرداد 1391, 14:05 عصر
خواهش میکنم
یکی کمکم کنههههههههه:گریه::افسرده:

hgh.just.hony
چهارشنبه 03 خرداد 1391, 15:01 عصر
چرا کسی به من کمک نمیکمه

fakhravari
چهارشنبه 03 خرداد 1391, 15:17 عصر
در کل خوب نیست استفاده از این روش.
با ID کار کنید.
منم یه مدت روی این روش کار کردم.
اما اصولش این ID است

hgh.just.hony
چهارشنبه 03 خرداد 1391, 15:55 عصر
یعنی چی؟
اگه اصولش این نیست پس چرا خود گوگل اینجوری کار کرده ؟
یکی کمک کنه آهای اهالی برنامه نویس
:قلب:

fakhravari
چهارشنبه 03 خرداد 1391, 16:10 عصر
http://barnamenevis.org/showthread.php?315422-%D9%86%D9%85%D8%A7%DB%8C%D8%B4-%D8%AE%D8%B1%D8%A7%D8%A8-%D9%81%D9%88%D9%86%D8%AA-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C-%D8%AF%D8%B1-%D8%B5%D9%81%D8%AD%D8%A7%D8%AA

hgh.just.hony
چهارشنبه 03 خرداد 1391, 16:28 عصر
منظور من ارسال کلمه فارسی هست فقط میخام از همین روش

نمیشه یه راه حل یدین ؟

الان URL همین صفحه را نگاه کنین در بالا که در اصل پارامتر فارسی را ارسال کرده و دریافت میکنه

alonemm
چهارشنبه 03 خرداد 1391, 16:36 عصر
باسلام:

کد زیر رو در بین بلاک تگ Head قرار بدید:


<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


در سایت زیر من این عملیات رو پیاده سازی کردم روی ادامه مطلب 1 کی از اخبارها کلیک کنید:
http://www.ittehran.com


موفق باشید.

hgh.just.hony
پنج شنبه 04 خرداد 1391, 01:16 صبح
میشه یکی کمک کنه
من میخوام پارامتر ارسال کنم
جان من یکی یه سمپل بده به ما
بخدا سرچ کردم و نجستم

hgh.just.hony
پنج شنبه 04 خرداد 1391, 09:57 صبح
نمیشه یکی اینجا کمک کنه
من از پیشنهاد alonemm استفاده کردم اما بازم نشد


<%@ Page Language="C#‎‎‎" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
</div>
</form>
</body>
</html>

و کدش :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
string a = "سلام";
Response.Redirect("Default2.aspx?id="+a);
}
}



و صفحه 2 :


<%@ Page Language="C#‎‎‎" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>

<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

</div>
</form>
</body>
</html>

و کدش :


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = Request.QueryString.ToString();
}
}


اما یازم دکمه صفحه اول را که میزنم خروجیم این میشه بجای اون کلمه فارسی :

مثل این عکس :87416

در صورتی که تو ادرس URL این کلمه فارسی را نوشته :


localhost:1149/Sample/Default2.aspx?id=سلام
تراخدا یکی کمکم کنه:گریه::گریه::گریه::گریه::گ یه::گریه::گریه::گریه::گریه:

hgh.just.hony
پنج شنبه 04 خرداد 1391, 11:20 صبح
میشه یکی کمکم کنه

الو

خواهش میکنم

:متفکر:

fakhravari
جمعه 05 خرداد 1391, 18:34 عصر
والا الان که تست میکنم جواب میده و با فارسی مشکل نداره.
string t1 = "سلام ";
string t2 = "برادر ";
string t3 = "این که درسته";

Response.Redirect("Default2.aspx?id1=" + t1 + " &id2= " + t2 + " &id3= " + t3 + "");
Label1.Text = Request.QueryString["id1"].ToString();
Label2.Text = Request.QueryString["id2"].ToString();
Label3.Text = Request.QueryString["id3"].ToString();
با Explore شنیده بودیم اما با Fox دیگه ندیده بودم.
توی عکسی که گذاشتی

hgh.just.hony
شنبه 06 خرداد 1391, 09:04 صبح
سلام
چرا برای من جواب نمیده؟
یکی کمک کنه
حداقل بگین اگه طبق او عکس دریافتش کردم چه جوری فارسیش کنم؟

hgh.just.hony
شنبه 06 خرداد 1391, 16:49 عصر
سلام
بالاخره خودم جوابمو پیدا کردم
ابتدا در وب کانفیگ :


<system.web>
<globalization
requestEncoding="utf-8"
responseEncoding="utf-8"
responseHeaderEncoding="utf-8"
fileEncoding="utf-8"
resourceProviderFactoryType=""
enableBestFitResponseEncoding="true"
culture="fa-ir"/>
//// بین دو تگ <system.web>


سپس در جایی که میخواهیم Request.QueryString.ToString() را بنویسیم این چند خط را نیز می نویسیم.

string utf8Input = HttpUtility.UrlDecode(Ur_Parameter, System.Text.Encoding.UTF8));


خلاص
:تشویق::تشویق::تشویق::تشویق:: شویق::تشویق::تشویق::تشویق::ت ویق:
:قهقهه::قهقهه::قهقهه::قهقهه:: هقهه::قهقهه::قهقهه::کف::کف::ک ::کف::کف::گیج::گیج::گیج::گیج::گ ج::لبخند::لبخند::لبخند::لبخن ::لبخند:

fakhravari
یک شنبه 07 خرداد 1391, 01:08 صبح
<globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" culture="fa-IR" uiCulture="fa-IR"/>

arefba
یک شنبه 07 خرداد 1391, 06:13 صبح
عرض کنم خدمت شما
به جای قبول دردسرای این می تونستید از session استفاده کنید
مزایا نسبت به کوئری :
1- امنیت داده ها
2- دسترسی آسان در همه جا
3- به ازای هر کاربر ایجاد میشه
معایب :
در رم سرور هستند

hgh.just.hony
دوشنبه 08 خرداد 1391, 09:44 صبح
سلام
ممنونم دوست خوبم
اما نمی خواستم امنیتش رو
و اینکه جاهای خیلی مهم تر از سژن استفاده کردم
:چشمک:

hgh.just.hony
چهارشنبه 28 تیر 1391, 15:39 عصر
هی بابا مهندسین
خودم جوابو پیداکردم اما نزدم اینجا :

string path = (Request.QueryString.ToString());
string utf8Input = "";

utf8Input = HttpUtility.UrlDecode(path.Substring(4), System.Text.Encoding.UTF8).ToString();
//اینم فارسی شد

hgh.just.hony
دوشنبه 02 مرداد 1391, 10:15 صبح
جوابش اینه :

string path = (Request.QueryString.ToString());
string utf8Input = "";


utf8Input = HttpUtility.UrlDecode(path.Substring(4), System.Text.Encoding.UTF8).ToString();