PDA

View Full Version : استفاده از jquery داخل php



leilaaa
سه شنبه 19 آبان 1394, 09:08 صبح
من می خوام هنگامی که کاربر روی یک div مشخص کلیک کرد متناسب با id اون div یک سری اطلاعات از دیتابیس خونده شه مثلا فیلدهایی که id اونها با id دایو کلیک شده یکی هست.
ولی نمی دونم چجوری!
خوب من گرفتن id دایو با jquery بلدم و خوندن از دیتا ست با php ! داخل قسمت php هم که <script></script> خطا می گیره ، چه کنم؟

hamedarian2009
سه شنبه 19 آبان 1394, 10:33 صبح
اینکه بلد نیسیتین راهش اینه که یاد بگیرین بنابراین در مورد ajax با jquery سرچ کنید
این فیلم هم خوبه
http://www.daneshjooyar.com/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-ajax-%D8%AF%D8%B1-php/

leilaaa
سه شنبه 19 آبان 1394, 15:24 عصر
مرسی از منبعتون گوش دادم ولی با توجه به اطلاعات پیش فرض کمی که دارم و اینکه فیلم در رابطه با فورم بود و من فرمی ندارم ، مشکلم حل نشد.
امکان داره دوستان دیگه یه کد مثال برای این کار ارائه بدند؟

kabootar_y
سه شنبه 19 آبان 1394, 16:16 عصر
من می خوام هنگامی که کاربر روی یک div مشخص کلیک کرد متناسب با id اون div یک سری اطلاعات از دیتابیس خونده شه مثلا فیلدهایی که id اونها با id دایو کلیک شده یکی هست.
ولی نمی دونم چجوری!
خوب من گرفتن id دایو با jquery بلدم و خوندن از دیتا ست با php ! داخل قسمت php هم که <script></script> خطا می گیره ، چه کنم؟

شما کدی که دارید رو بذارید مثلا همون div ها رو تا بقیش رو ما راهنماییتون کنیم
مثلا بدونیم چند تا دایو هست بعد اطلاعاتی که بعدش از دیتابیس گرفته شد داخل همون دایو نمایش داده بشه یا یه جای دیگه؟

leilaaa
سه شنبه 19 آبان 1394, 16:37 عصر
من یه فروشگاه می خوام داشته باشم . حالا می خوام وقتی کاربر به طور مثال روی عبارت لباس زنانه کلیک کرد ، صرفا محصولاتی نمایش داده بشند که جز category لباس زنانه هستند. ولی نمی دونم وقتی کاربر روی عبارت لباس زنانه کلیک کرد، من مقدار category که برابر لباس زنانه است رو چجوری به به شرط sql پاس بدم . در مورد دایو هم چندین دایو که هر کدوم صرفا شامل یک تگ a هستش که داخلش عبارت لباس زنانه یا نام سایر category ها قرار گرفته . اطلاعات دیتاست هم توی یه div دیگه به نام gallery وسط صفحه نمایش داده می شه.


<?php
include('connect.php');


$sql="select tblproduct.*,tblpsh.* from tblproduct INNER JOIN tblpsh ON tblproduct.id=tblpsh.productId"
where tblproduct.category=cag;
$stmt=$db->prepare($sql);
$stmt->execute();






من با jquery می فهمم که کاربر رو کدوم div یا به عبارتی دسته بندی کلیک کرده و محتوای اونو داخل متغییری به نام cag می ریزم ولی داخل کدای php جایی که می خواد محصولات داخل div گالری نمایش بده دز ادامه دستور sql متغییر cag منو نمی شناسه.
اصلا امکان داره متغییر cag جوری داخل کدای jquery تعریف شه که داخل بخش php هم قابل استفاده باشه؟

hamedarian2009
سه شنبه 19 آبان 1394, 17:20 عصر
برات یه مثال ساده انجام دادم امیدوارم بدردت بخوره
فرض کن کدت اینه


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div id="cat1">Cat1</div>
<div id="cat2">Cat2</div>
<div id="cat3">Cat3</div>
<div id="result"></div>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('#cat1, #cat2, #cat3').click(function(){
$.ajax({
url: 'ajax.php',
type: 'GET',
dataType: 'html',
data: {cat: $(this).attr('id')},
success: function(data){
$("#result").html(data);
}
});
});
});
</script>
</body>
</html>


سه تا دیو با آیدی های مخالف داری و یه دیو هم گه result داخلش نمایش داده میشه

یه صفحه ajax.php هم داری کدش اینه مثلا


<?php
if(isset($_GET['cat'])) {
switch ($_GET['cat']) {
case 'cat1':
echo '<strong>You click cat1...</strong>';
break;
case 'cat2':
echo '<strong>You click cat2...</strong>';
break;
case 'cat3':
echo '<strong>You click cat3...</strong>';
break;
}
}


کاربر رو هر دیو کلیک کنه مقدار آیدیش میره به صفحه ajax.php و اونجا میتونی با توجه به دسته ای که دریافت کردیبا سوئیچ کوئریت رو بنویسی اینجا من فقط اکو کردم جی کوئری رو به صفحه یادت نره ضمیمه کنی

leilaaa
جمعه 13 آذر 1394, 12:53 عصر
سلام ، من تو در خواست قبلیم می خواستم زمانی که تو صفحه اول گالریم هستم روی هر دسته بندی محصول که کلیک کردم ، محصولات همون دسته تو صفحه گالری نمایش داده بشه که به لطف دوستان انجام شد.

حالا سوال دیگم اینه که من میام تو صفحه گالری(gallery.php) روی عبارت لباس مردانه کلیک می کنم و تمام لباس های مردانه لیست می شند و بعد من روی یکی از این آیتم ها کلیک می کنم و وارد صفحه جزئیات محصول(details.php) می شم. حالا دوباره تو منوی این صفحه روی لباس رنانه کلیک می کنم و قاعدتا باید به صفحه گالری برگردم و این بار لیست محصولات زنانه رو نشون بده.
من تو صفحه details میام دسته ای که روش کلیک شده رو به صفحه گالری ارسال می کنم.
<a href="gallery.php?cat='feminine'">zanane</a>
حالا تو صفحه گالری تو رویداد لود صفحه می زنم


<script>
$(document).ready(function() {

$.ajax({
url: 'ajax.php',
type: 'GET',
dataType: 'html',
data: {cat:$_GET['cat']},
success: function(data){
$("#gallery").html(data);
}
});


});


کار نمی کنه که احتمالا مال اینه که $_GET نمی شه تو ajax استفاده کرد سرچ کردم گفته بود از تابع $.get باید تو ajax استفاده شه که بازم نشد ! یا من دارم اشتباه استفاده می کنم. می شه بازم راهنماییم کنید؟ ممنون



$.get( " details.php " , { cat :"cat"} ) ;

hamedarian2009
جمعه 13 آذر 1394, 18:23 عصر
اینکه شما از یک صفحه به صفحه دیگه بخواهید منتقل بشید دیگه اینجا مفهوم ajax از بین میره و به همون روش معمول باید انجام بدین