آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

گرفتن id از جدول های دیتابیس با جاوااسکریپت

ابراهیم زاده  9 سال پیش  9 سال پیش
0 0

سلام . من میخوام تو پروژه note  وقتی رو دکمه access کلیک کردم بره و userId اون فردی که روش کلیک شده را برگردونه که استفاده کنم . راهش چیه؟

 برای این سوال 6 پاسخ وجود دارد.
پاسخ به سوال 
سجاد عباسی  9 سال پیش
+2 0

برای این کار باید به دکمه مربوطه یه لینک بدید به اینصورت :

 <a href="<?baseurl()?>/admin/getAccess/<?=$record['user_id']?>" > access </a
 

که همانطور که میبینید باید در حلقه که اطلاعات رو برای هر رکورد درج میکنید باید در این لینک user_id فرد رو هم قرار بدید.

برای جاوااسکریپت باید از ajax استفاده کنید به اینصورت :‌

 <span onclick="access(<?=$record['user_id']?>)" > access </span>
0 0
این میره تو کنترل ؟ بعد با جاوااسکریپت بگیرمش؟ (9 سال پیش)
0 0
user_id همون شماره است که اول جدول زدم (9 سال پیش)
+1 0
اگه منظورتون رو متوجه شده باشم برای جاوا اسکریپت باید به اینصورت عمل کنید. (9 سال پیش)
پاسخ به سوال 
ابراهیم زاده  9 سال پیش
0 0

من اینجوری نوشتم ولی نتیجه نگرفتم :

  function userToggle(sender) {
sender = $(sender);


// $.ajax('/notes-v2/note/user_toggle/'{
// type: 'post',
// dataType: 'json',
success: function (data) {
console.log('$user_id');
}

}

}


</script>
 

کنترولر:


public function userToggle(){

if(!isset($_SESSION['user_id'])){
exit;
}
$user_id= $_SESSION['user_id'];
return $user_id;
echo json_encode(array(
'status'=>true,
));
}
 
0 0
اسم کنترلر طبق code convention نیست. userID رو برا چی میخاین؟ (9 سال پیش)
0 0
میخوام userID رو بگیرم و وقتی میخوام دسترسی رو تغییر بدم فقط کلیک رو دکمه کنم و دیگه userID رو دستی وارد نکنم (9 سال پیش)
0 0
از کد من بالا استفاده کنید (9 سال پیش)
+1 0
ممنون . حل نشد فعلا (9 سال پیش)
0 0
خب شما برای تغییر دسترسی به userId نیاز دارید که میتونید از طریق بالا هم به دو روش ajax, link داشته باشید و ازش استفاده کنید. (9 سال پیش)
پاسخ به سوال 
ابراهیم زاده  9 سال پیش
0 0

میشه لطف کنین ادامه خود script هم راهنمایی کنین . ممنونم

 <span onclick="access(<?=$record['user_id']?>)" > access </span>
<script>



</script>
پاسخ به سوال 
سجاد عباسی  9 سال پیش
+1 0

شما به این طریق userId رو از طریق php بصورت پارامتر javascript قرار میدید و بعد با کلیک مقدار userId به تابع فرستاده میشه و میتونید از اون استفاده کنید و یه دستور ajax بفرستید. من کد رو تست نکردم اگه اشتباه تایپی داشت یا جایی مشکلی داشتید بگید.

 <span onclick="toggleAccess(<?=$record['user_id']?>)" > access </span>


<script>
function toggleAccess(userId) {


$.ajax('/notes-v2/note/userToggleAccess/' + userId , {
type: 'post',
dataType: 'json',
success: function (data) {
console.log(data.userId);
}

}

}
</script>

 

پاسخ به سوال 
ابراهیم زاده  9 سال پیش
0 0

سلام . کار نمیکنه . کور شدم ولی فایده نداره . اصلا alert  هم اجرا نمیشه

 foreach ( $records as $record){?>
<ul class="todo-user">
<li><?=$record['user_id']?></li>
<li><?=$record['email']?></li>
<li><?=$record['fullname']?></li>
<li><?=$record['nickname']?></li>
<li><?=$record['access']?></li>
<li><?=jdate($record['registerTime'])?></li>
<li><?=jdate($record['lastVisitTime'])?></li>
<li> <span class="btn-blue" onclick="toggleAccess(<?=$record['user_id']?>)" > access </li>

</ul >
<?}?>

</div>

<script>
function toggleAccess(userId) {
alert("fnf");


$.ajax('/notes-v2/admin/userToggleAccess/' + userId , {
type: 'post',
dataType: 'json',
success: function (data) {

}

}

}


</script>

اینم کنترولر : 

public function userToggleAccess($userId) {
$user_id= $_SESSION['user_id'];

echo json_encode(array(
'status'=>true,
));

}

 

0 0
یه سوال الان در کنترلر مقدار درست چاپ میشه و ارور چاپ نمیکنه؟ (9 سال پیش)
0 0
تصحیح نظر قبل: >?=$record['user_id']?< (9 سال پیش)
0 0
الان متوجه یه مشکل تو کدتون شدم شما span رو نبستید!!!! <span$gt; رو فراموش کردید. (9 سال پیش)
0 0
اصلا هیچی اجرا نمیشه . اون alert 'گزاشتم اونجا و لی اونم چاپ نمیشه (9 سال پیش)
+1 0
بستم ولی بازم هیچ . فایل های javascript و .... هم لود شده (9 سال پیش)
0 0
عجیبه احتمالا خطا دارید تو console نگاه کنید ببینید خطا ندارید. (9 سال پیش)
0 0
نه اونجام خطا ندارم . باور کنید کور شدم . چند روزه روش کار میکنم . دوس دارم یادش بگیرم واقعا (9 سال پیش)
0 0
تو html خروجی ببینید جایی خطایی چاپ نشده.... (9 سال پیش)
پاسخ به سوال 
ابراهیم زاده  9 سال پیش
0 0

عه اینجا userid رو میده ها . روی یوزر اول کلیک کردم . تو html


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .