Diskuze: Diakritika
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 10 zpráv z 10.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Trošku zmateně položený dotaz. Kde ta data chceš zobrazit? V PHP? V nějaké C#.NET aplikaci? Data se ukládají někam do DB a pak se z ní nějak tahají? Nebo se rovnou po odeslání z C# zobrazují někde v PHP stránce?
Pouzij UrlDecode/Decode. Btw jen si představ situaci kdyby v hesle bylo &.
Fajn, tak to řeknu ještě více okatě, co kdyby si měl v tom hesle zastoupeny úplně všechny znaky (včetně toho separátoru, kterým odděluješ parametry).
public string SendQuery(string query)
{
UTF8Encoding enc = new UTF8Encoding();
byte[] postdata = enc.GetBytes("query=" + query);
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(SerUrl);
webRequest.CookieContainer = cookies;
webRequest.Method = "POST";
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.ContentLength = postdata.Length;
webRequest.Headers.Add(HttpRequestHeader.AcceptCharset, "UTF-8");
Stream stream = webRequest.GetRequestStream();
stream.Write(postdata, 0, postdata.Length);
stream.Close();
HttpWebResponse response = (HttpWebResponse)webRequest.GetResponse();
stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
string ReturnData = reader.ReadToEnd();
return ReturnData;
}
PHP má výchozí kódování UTF-8. Když odešlu třeba "+ěščřžýá" a na php hned nechám poslat zpět - echo $_POST["query"] - tak mi to vypíše +???????;
Zobrazeno 10 zpráv z 10.