PDA

View Full Version : سوال: انتقال مقدار از javascript به php



numberone1
پنج شنبه 16 دی 1389, 00:11 صبح
یه تابع دارم توی برنامه به javascript که یک متغیر داره توسط کاربر مقدار دهی باید بشه
میخوام این متغیر مقدارش توی دیتابیسم ثبت بشه و توی یه صفحه دیگه فراخوانی بشه
مشکلم اینه که ایجکس بلد نیستم و نمیدونم چطور میشه مقدار این متغیر جاوا رو به php انتقال بدم؟

Keramatifar
پنج شنبه 16 دی 1389, 01:11 صبح
معمولا برای ارتباط بین زبان برنامه نویسی server side با client side باید از چیزی استفاده کنید که هر بهش دسترسی داشته باشن
در ساده ترین حالت ممکن می تونی مقدار رو با جاوا اسکریپت توی کوکی دخیره کنی و با php بخونیش

Vahid Faraji
پنج شنبه 16 دی 1389, 10:51 صبح
شما مي توني تو جاوا اسكريپت مقدار اين متغيرو در يك كنترل hidden ذخيره كني، بعد تو php بخونيش و تو database ذخيره كني.

numberone1
پنج شنبه 16 دی 1389, 15:05 عصر
مرسی از پاسخ هاتون
تابع جاوا اسکریپت نقشه گوگل و پائین فرم لود میکنه
میخوام مختصات این نقشه رو که کاربر تعیین میکنه تو دیتابیس ذخیره کنم و توی صفحه بعدی کل اطلاعات ثبت شده در صفحه قبل بازیابی کنم
اینطوری که شما گفتین باید یه صفحه هم به عنوان واسطه باشه این وسط که بشه مقدار جاوا اسکریپتو یا به کوکی یا به فیلد مخفی بدم بعد ثبت کنم در دیتابیس؟
راه دیگه ای نداره؟؟؟

Vahid Faraji
پنج شنبه 16 دی 1389, 15:10 عصر
شما مي توني از يه صفحه واسط استفاده كني و مقدار مورد نظرو در database ذخيره كني سپس از اون صفحه واسط بري به صفحه دوم و اطلاعاتو نشون بدي
يا
مي توني به همين صفحه برگردي و ذخيره كني سپس بري به صفحه دوم.

numberone1
پنج شنبه 16 دی 1389, 17:11 عصر
شما مي توني از يه صفحه واسط استفاده كني و مقدار مورد نظرو در database ذخيره كني سپس از اون صفحه واسط بري به صفحه دوم و اطلاعاتو نشون بدي
يا
مي توني به همين صفحه برگردي و ذخيره كني سپس بري به صفحه دوم.
مرسی از پاسخت
میشه لطف کنی یه نمونه کد از این قسمت که گفتی رو بذاری
من نمیدونم چجوری باید اجرای کد ها رو متوقف کنم دوباره اجرا رو از خطی که متوقف شده ادامه بدم؟!!

parsidev
پنج شنبه 16 دی 1389, 23:41 عصر
سلام
برای وضعیتی که می فرمایید بهترین راه استفاده از آجاکسه
با احترام

numberone1
جمعه 17 دی 1389, 15:18 عصر
سلام
برای وضعیتی که می فرمایید بهترین راه استفاده از آجاکسه
با احترام
مرسی از پاسختون دوست عزیزم
اول همین تاپیک عرض کردم متاسفانه ایجکس بلد نیستم
میشه لطف بفرمائید این کد ایجکس رو در اختیار من بگذارید که یک متغیر از جاوا اسکریپت را در دیتابیس ثبت کنه؟

parsidev
جمعه 17 دی 1389, 20:47 عصر
تقدیم به نامبر وان عزیز که این روزا همش به پست هم می خوریم!
یه فایل حتی html به صورت زیر لازم داریم:


<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function savetodb(){
$.post("process.php",{entryval : $("#entryvalue").val()},function(data){
alert($data);
});
}
</script>
</head>
<body>
<input type="text" name="entryvalue" id="entryvalue" /><br />
<input type="button" value="Save it" onclick="savetodb();" />
</body>
</html>


و در صفحه process.php باید مقداری که با متد POST و با نام entryval میاد رو ذخیره کنی:


<?php
if (mysql_query("insert into mytable ('fieldname') values ('".$_POST['entryval']."')")){
echo 'saved';
}else{
echo 'error: '.mysql_error();
}

?>

در فایل php قبل از اجرای کوئری باید به بانک وصل بشی
در فایل html باید فایل jquery.js رو از اینترنت بگیری و کنار فایلت قرار بدی

جهت یادگیری jquery می تونی به سایت jquery.com سر بزنی
موفق باشی
با احترام

numberone1
جمعه 17 دی 1389, 21:35 عصر
تقدیم به نامبر وان عزیز که این روزا همش به پست هم می خوریم!
یه فایل حتی html به صورت زیر لازم داریم:


<html>
<head>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
function savetodb(){
$.post("process.php",{entryval : $("#entryvalue").val()},function(data){
alert($data);
});
}
</script>
</head>
<body>
<input type="text" name="entryvalue" id="entryvalue" /><br />
<input type="button" value="Save it" onclick="savetodb();" />
</body>
</html>


و در صفحه process.php باید مقداری که با متد POST و با نام entryval میاد رو ذخیره کنی:


<?php
if (mysql_query("insert into mytable ('fieldname') values ('".$_POST['entryval']."')")){
echo 'saved';
}else{
echo 'error: '.mysql_error();
}

?>

در فایل php قبل از اجرای کوئری باید به بانک وصل بشی
در فایل html باید فایل jquery.js رو از اینترنت بگیری و کنار فایلت قرار بدی

جهت یادگیری jquery می تونی به سایت jquery.com سر بزنی
موفق باشی
با احترام
سعادتیه برای من
دوست عزیز مرسی از پاسختون ولی کاش قبلش پست های قبلی رو مطالعه میکردید
من بوسیله جاوا اسکریپت نقشه گوگل رو پائین فرمم لود میکنم حالا میخوام مختصلت این نقشه رو بعد از زدن کلید submit از جاوا اسکریپت بگیرم و در دیتابیس ثبت کنم به همراه بقیه فیلد ها
اینجوری که شما اینجا نوشتین باید مقدار جاوا اسکریپت بره به صفحه واسط دوم اونجا ثبت بشه در دیتابیس
آیا راه دیگه ای هست که بدون صفحه واسط کل عملیات ثبت در یک صفحه(صفحه جاری) انجام بشه؟؟؟

parsidev
جمعه 17 دی 1389, 22:44 عصر
سلام
خوب باید کمی با آژاکس آشنا بشین...
وقتی از آجاکس استفاده کنید صفحات شما لودینگ محسوس نداره.
یعنی به صورت پس زمینه پردازش میشه و این دقیقا همون چیزیه که شما لازم دارین!
یعنی وقتی شما رو دکمه کلیک می کنید همچنان در صفحه جاری هستید و به صفحه دیگری انتقال پیدا نمی کنید!بلکه اطلاعات به صفحه پردازش ارسال میشه و جاوا اسکریپت نتیجه پردازش رو به شما در قالب یه هشدار نشون میده...

با احترام