arastooms 1,046 ارسال شده در 19 آذر، ۱۳۹۶ اشتراک گذاری ارسال شده در 19 آذر، ۱۳۹۶ سلام به همه اساتید عزیز من یک فایل php ساده در هاستم بار گزاری کردم که 2 مقدار رو با متد post بهش ارسال میکنم ( یک json با دو مقدار) و به من یک جیسون برمیگردونه اگر موفقیت آمیز باشه ارسال من هست {"name":"ali","family":"ahmadi"} و اگر همه چیز درست باشه به من این رو برمیگردونه {"return":"ok","old":"29"} حالا قصدم اینه که یه صفحه html بنویسم و رو هاست آپلود کنم با 2 تا ورودی اسم فامیلی که این 2 مقدار رو که تایپ میکنم و دکمه ارسال رو میزنم بره به test.php به صورت جیسون داده رو ارسال کنه و جواب رو ببینم نکته اینجاست که متد Post خالی رو بلدم و میتونم ارسال کنم تک تک ولی ارسال یک رشته جیسون رو بلد نیستم و نیاز به راهنمایی شما عزیزان دارم ممنون میشم من رو با کد html راهنمایی کنید لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
AMiN.M7892 1,029 ارسال شده در 19 آذر، ۱۳۹۶ اشتراک گذاری ارسال شده در 19 آذر، ۱۳۹۶ سلام ارسطوجان، طبق چیزی که من متوجه شدم شما باید یک فرم در html طراحی کنید با دو ورودی دلخواه و بعد بجای action باید با جاوااسکریپت ورودی ها رو به جیسون تبدیل کنید و بعد با همون جاوااسکریپت پستش کنید به اسکریپت PHP شیوه ایجاد یک شی در جاوااسکریپت: var object2 = {"username":"user1","password":"pass1"}; که باید در کد بالا مقادیر pass1 و user1 رو با استفاده از متد document.getElementByClass یا byId و متد InnerHTML بدست بیارید و جایگزاری کنید شیوه تبدیل شی به جیسون: var jsonstr = JSON.stringify(object2); فقط شیوه ارسالش به اسکریپت رو نمیدونم و بررسی هم که کردم به نتیجه ای نرسیدم. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 19 آذر، ۱۳۹۶ اشتراک گذاری ارسال شده در 19 آذر، ۱۳۹۶ سلام. برای ارسال چرا از json می خواین استفاده کنید؟ ارسال بدون جیسون این شکلی میشه <!DOCTYPE html> <html> <body> a : <input type="text" id="a"><br> b : <input type="text" id="b"><br> <button type="button" onclick="loadDoc()">Request data</button> <p id="demo"></p> <script> var a = document.getElementById("a"); var b = document.getElementById("b"); function loadDoc() { av = encodeURIComponent(a.value) bv = encodeURIComponent(b.value) var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; } }; xhttp.open("POST", "get.php", true); xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhttp.send("a="+av+"&b="+bv); } </script> </body> </html> در مثال بالا مقدار بازگشتی به عنوان متن ساده چاپ میشه حالا مقدار بازگشتی اگه json باشه xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myObj = JSON.parse(this.responseText); document.getElementById("demo").innerHTML = myObj.name; } }; دریافت و چاپ اطلاعات ارسالی توسط php <?php $a = $_POST['a']; $b = $_POST['b']; echo "a=[$a] & b=[$b]"; ?> ساخت و چاپ json در php <?php class A{ public $name ; public $age ; public $city ; } $myObj = new A(); $myObj->name = "Ali"; $myObj->age = 30; $myObj->city = "New York"; $myJSON = json_encode($myObj); echo $myJSON; ?> کافیه مثال هارو مثلا به این شکل تغییر بدید. $myObj->name = $_POST['name']; لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
rasool.g 135 ارسال شده در 19 آذر، ۱۳۹۶ اشتراک گذاری ارسال شده در 19 آذر، ۱۳۹۶ اگه می خواین json ارسال کنید تبدیل json به متن ساده که اقای amin گفتن. در 2 ساعت قبل، AMiN.M7892 گفته است : var jsonstr = JSON.stringify(object2); متن ساده رو با ajax که کدش رو نوشتم ارسال کنید. سمت php متن ساده رو دریافت کنید. $Jsonstring = $_POST['Jsonstring']; با تابع json_decode متن ساده جیسون رو به یک شیئ یا ارایه در php تبدیل کنید و از اون استفاده کنید. <?php $json = $_POST['Jsonstring']; $obj = json_decode($json); echo $obj->{'age'}; ?> json-decode متن json باید حتما استاندارد باشه اگه در نوشتن کد نهایی مشکل داشتید بگید تا براتون بنویسم. لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.