با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، با یکی دیگر از جلسات دوره کامل آموزش JavaScript در خدمت شما دوستان هستیم . در این جلسه قصد داریم به آموزش JSON در جاوا اسکریپت JavaScript و معرفی JSON بپردازیم.
JSON (JavaScript Object Notation) یک ساختار برای ذخیره و تبادل اطلاعات می باشد.
داده ها در هنگام تبادل بین مرورگر و سرور فقط می توانند به صورت متن Text باشند.
JSON به صورت متن می باشد و می توانیم هر شی جاوا اسکریپت را به JSON تبدیل کنیم و JSON را به سرور ارسال کنیم.
همچنین می توانیم هر JSON را که از سرور دریافت کرده ایم را به شی جاوا اسکریپت تبدیل کنیم.
با این روش می توانیم بدون هیچ گونه پیچیدگی و تجزیه و تبدیلی با داده ها مانند اشیا جاوا اسکریپت کار کنیم.
اگر داده هایی ذخیره شده در شی جاوا اسکریپت دارید، می توانید آن شی را تبدیل به JSON کرده و آن را به سرور ارسال کنید:
1 2 3 | var myObj = {"name":"John", "age":31, "city":"New York"}; var myJSON = JSON.stringify(myObj); window.location = "demo_json.php?x=" + myJSON; |
اگر داده هایی را در قالب JSON دریافت کردید، می توانید آن را به شی جاوا اسکریپت تبدیل کنید:
1 2 3 | var myJSON = '{"name":"John", "age":31, "city":"New York"}'; var myObj = JSON.parse(myJSON); document.getElementById("demo").innerHTML = myObj.name; |
هنگام ذخیره اطلاعات، بدون توجه به اینکه آن را کجا ذخیره می کنید، داده ها با فرمت متنی text ذخیره خواهند شد.
JSON این امکان را به ما می دهد تا داده ها را به صورت متن ذخیره کنیم:
1 2 3 4 5 6 7 8 9 | //Storing data: myObj = {"name":"John", "age":31, "city":"New York"}; myJSON = JSON.stringify(myObj); localStorage.setItem("testJSON", myJSON); //Retrieving data: text = localStorage.getItem("testJSON"); obj = JSON.parse(text); document.getElementById("demo").innerHTML = obj.name; |
همانطور که گفتیم JSON یک فرمت تبادل اطلاعات آسان و سبک هست که توسط هر زبان برنامه نویسی قابل استفاده است.
در هر زبان برنامه نویسی معمولا توابع از پیش تعریف شده ای برای کار با JSON وجود دارد.
جلسه معرفی و آموزش JSON در جاوا اسکریپت JavaScript نیز به پایان رسید.
در جلسه بعد به ساختار دستوری JSON خواهیم پرداخت. با ما همراه باشید
شهرزاد
با سلام
یک سوال دیگه هم دارم
برای نصب کتابخونه ی gd بر ای پردازش تصویر تو php باید چیکار کنم و چجوری نصبش کنم ؟؟
صادق
اطلاعی ندارم
شهرزاد
در رابطه با سوال قبلیم که جواب دادین ممنونم
ولی من تصویرم رو تو php ایجاد کردم .یعنی کد اسکریپت که نوشتم سمت سروره
و میخام همون سمت سرور هم ذخیره بشه
کد جاوا اسکریپت نمیخام بنویسم
شما اخر صحبتاتون گفتین که کار ذخیره ی تصویر رو با php انجام بدم
خب دقیقا سوال من همینه
چجوری با php ذخیره کنم؟؟
صادق
از تابع ()move_upload_file استفاده کنید.
https://www.php.net/manual/en/function.move-uploaded-file.php
شهرزاد
منظورم کد اسکرین شات بود در خط دوم پیامم نه اسکریپت
عذر میخام
زینب
سلام
ببخشید من دوباره مزاحم شما شدم
دلیلش اینه که راهنمایی هاتون واسه من خیلی خوب بوده تا الان
خیلی گشتم زیر آموزش که مربوط به سوالم هست .سوالم رو بپرسم
ولی پیدا نکردم
عذر میخام
یه سوال دارم
من طول و عرض عکسام رو دارم.اما میخام که مختصات چهارگوشه ی تصویرم رو برداشت کنم.کدهای زیادی امتحان کردم اما نهایتن طول و عرض عکسم رو داده.برای برداشت مختصات چهار گوشه ی عکس باید از چه کدهایی استفاده کنم؟؟ این رو هم ضافه کنم که من تو PHP دارم کار میکنم…
صادق
سلام.
خواهش میکنم. فقط اینکه سوالاتتون رو توی پست های مربوطه بپرسین.
مختصات نسبت به خود عکس یا نسبت به صفحه نمایش؟
برای روش اول باید این کار رو انجام بدید: (x طول تصویر و y عرض تصویر)
گوشه بالا سمت چپ: [۰,۰]
گوشه بالا سمت راست: [x,0]
گوشه پایین سمت چپ: [۰y]
گوشه پایین سمت راست: [x,y]
برای روش دوم هم کافیه تا مختصات تصویر نسبت به صفحه رو به همه مؤلفه ها اضافه کنی.
مثلا فرض کنید مختصاتی که تصویر در اون قرار داره، ix و iy باشه.
برای گوشه پایین سمت راست میشه: [x+ix , y+iy]
زینب
سلام مجدد
واقعیتش من مبحث مربوط رو طبق گفته ام پیدا نکردم
وگرنه خیلی حرف شما درست و متینه
ممنون از راهنماییتون
فقط یه سوال دارم
من منظورم تابعی هستش که برای برداشت مختصات باید استفاده بشه
چون این ها که خالی و تنها نمیتونن به کار برن.من حدس میزنم که باید فانگشنی واسه اینا وجود داشته باشه
ممنون میشم در این رابطه هم راهنمایی کنین..
صادق
سلام.
برای گرفتن مختصات هم از همون طول و عرض استفاده میکنیم.(طبق کامنت قبلی)
اول باید عکس رو با استفاده از تابع (“image.png”)imagecreatefrompng داخل یه متغیر مثلا image$ می ریزید. (اینجا بسته به فرمت عکس، آخر نام تابع فرق میکنه)
بعد با استفاده از توابع (image$)imagesx و (image$)imagesy طول و عرض رو میگیرید و بقیه ماجرا.
اما اینکه بخواید مختصات رو نسبت به صفحه نمایش یا مرورگز دربیارید، باید از جاوااسکریپت استفاده کنید. بعد میتونید مقادیر تولید شده در جاوااسکریپت رو با استفاده از php بخونید.
به این لینک یه نگاه بندازید.