نمایش نتایج 1 تا 5 از 5

نام تاپیک: دریافت و ارسال اطلاعات فارسی تحت وب با indy

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آبان 1389
    محل زندگی
    مشهد
    پست
    222

    دریافت و ارسال اطلاعات فارسی تحت وب با indy

    سلام به همه استادا
    من یک برنامه دارم که با دلفی 2009 نوشتمش به این صورت که اطلاعات رو با استفاده از کامپوننت ایندی می فرستم .تا اینجا درست کار می کنه ولی اگر بخوام فارسی بفرستم مقادیر علامت سوال می فرسته از اون طرف هم وقتی می خوام اطلاعات فارسی رو از سایت بگیرم اطلاعات نا معتبر میده.چند روزه دارم کار می کنم لطفا کمکم کنید. البته لازم به ذکره که من چندین بار تاپیک های دوستان رو خوندم وهمه رو هم موبه مو اجرا کردم .بخشهایی از کد رو هم براتون ضمیمه می کنم.
    SL.Values['aa']:=aa;http.post
    ('http://forward2.orgfree.com/inserttable.php',SL );

    UTF8Decode(Get('http://forward2.orgfree.com/istrue2.php?shomare='+d));
    Result.noebar:=CookieManager.CookieCollection[0].Value;
    Result.hoze:= CookieManager.CookieCollection[1].Value;

  2. #2

    نقل قول: دریافت و ارسال اطلاعات فارسی تحت وب با indy

    اگر دلفی 2009 یونیکد ساپورت نمیکنه (اینقدر با دلفی ها کار نکردم یادم رفته) باید Locale رو فارسی کنید، تنظیماتش در کنترل پنل، ریجینال ستینگس، ادونسد (چه فارسی اینگیلیسیی نوشتم) هست. اگر ساپورت میکنه مشکل ارسال نیست، جای دیگه ای درای خرابش میکنی.

    الان دیدم بهم خصوصی هم پیغام داده بودی، دوباره برو دقت کن ببین برنامت رو از اول Stand Alone ساختی (همونطوریکه توی مثال بود) یا ISAPI ساختی؟
    آخرین ویرایش به وسیله ghabil : سه شنبه 30 آذر 1389 در 22:45 عصر

  3. #3

    نقل قول: دریافت و ارسال اطلاعات فارسی تحت وب با indy

    این الان پروژه IntraWeb هست یا یک پروژه معمولی دلفی؟ دلفی 2009 به طور پیش فرض از Indy 10 استفاده میکنه. دلفی 2009 و Indy 10 هر دو از یونیکد پشتیبانی می کنند، و مشکلی در این زمینه ندارند. شما باید ببینید اون وب سایت داره داده خودش را به چه Encoding ایی ارسال میکنه، و سپس اون داده را بعد از دریافت، به Encoding مورد نظر خودتون تبدیل کنید.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

  4. #4

    نقل قول: دریافت و ارسال اطلاعات فارسی تحت وب با indy

    مشکل در url encode است
    url باید کد شود و به پشتیبانی یا عدم آن در دلفی مربوط نمی باشد

  5. #5

    نقل قول: دریافت و ارسال اطلاعات فارسی تحت وب با indy

    از توابع زیر برای Post کردن استفاده کنید. تو فارسی حتما جواب میده:


    function Post(URL: String; ParamList: TStringStream): string;
    var
    HTTP: TIdHTTP;
    begin
    HTTP := TIdHTTP.Create(nil);
    try
    try
    HTTP.Request.ContentType :='application/x-www-form-urlencoded';
    Result := HTTP.Post( URL, ParamList );
    Except
    on E : Exception do
    begin
    Result := '';
    end;
    end;
    finally
    FreeAndNil(HTTP);
    FreeAndNil(ParamList);
    end;

    end;

    function MyFunc( P1, P2, P3, P4: String): String;
    var
    MyURL: String;
    ParamList : TStringStream;
    begin
    MyURL := 'http://www.url.com/url.php?';

    ParamList := TStringStream.Create('');
    ParamList.WriteString('P1=' + P1 + '&');
    ParamList.WriteString('P2=' + P2 + '&');
    ParamList.WriteString('P3=' + P3 + '&');
    ParamList.WriteString('P4=' + P4);

    Result := Post( MyURL, ParamList);

    end;

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •