PDA

View Full Version : سوال: ذخیره پست متناسب با نوع منو



7asemoon
جمعه 19 تیر 1394, 08:55 صبح
من در فرم ارسال پستم فقط یک باکس برای نمایش منو والد داشتم که با توجه به انتخابی که کاربر داشت در دیتابیس ذخیره میشد
به این صورت

$cat_id = CheckNum($_POST["category"]);

حالا فرم رو ارتقا دادم و با انتخاب منو والد فرزندان اون هم در باکس جداگانه نمایش داده میشن

سوال: حالا چطور باید کدم رو تغییر بدم که در صورتی که منو انتخاب شد و فرزند داشت id فرزند برای اون پست منظور بشه نه id پدر؟؟؟

7asemoon
شنبه 20 تیر 1394, 16:00 عصر
لطفا راهنمایی کنید

7asemoon
یک شنبه 21 تیر 1394, 09:04 صبح
کسی پیدا نشد ما رو راهنمایی بکنه

7asemoon
یک شنبه 21 تیر 1394, 22:57 عصر
سوالم گنگ هست یا اینکه کسی نمیتونه راهنمایی کنه یا اینکه ...

H:Shojaei
دوشنبه 22 تیر 1394, 02:29 صبح
سوال مبهمه...
اون باکسهایی که گفتید رو چطور نمایش میدین مثلا اگر والدی انتخاب شد و یک فرزند داشت و باز این فرزند 3 فرزند دیگه داشت هرکدوم از این باکسها رو چطور نشون میدین؟

7asemoon
دوشنبه 22 تیر 1394, 02:34 صبح
من فرض رو بر این گذاشتم که فرزند ها نتونن والد باشن

7asemoon
چهارشنبه 24 تیر 1394, 10:32 صبح
امیدوارم با این توضیح کسی پیدا بشه کمک کنه
من در پنل مدیریت در قسمت ارسال مطلب یک باکس دارم که منویی که قرار پست به اون تعلق بگیره رو کاربر مشخص میکنه در صورتی که منو انتخابی شامل زیر منو باشه یک باکس دیگه به صورت ایجکسی کنارش باز میشه که زیر منو های اون رو نشون میده
جدول منوهای من در دیتابیس به این صورت هست که اگر parent عدد 0 داشته باشه شامل فرزند نیست و در غیر این صورت شماره پدر رو در parent دریافت میکنه
در جدول پست در دیتابیس هم فقط شماره آیدی مربوط به منو رو دریافت میکنه
خب تا اینجا که فکر میکنم همه چی واضح بود
حالا سوال من اینه که من میخام اگر باکس منویی که انتخاب شد شامل فرزند بود و باکس جدید باز شد آیدی باکس دوم ذخیره شه و اگر فرزند نداشت آیدی باکس اول ذخیره بشه

H:Shojaei
چهارشنبه 24 تیر 1394, 10:46 صبح
خوب حالا تقریبا میشه فهمید چکار میخواید بکنید...
یه متغیر باید داشته باشید که هربار که یک باکس جدید اضافه میشه از طریق کدهای ایجکس id اون باکس رو بذاره تو این متغیر با این کار آخرین باکسی که نمایش داده شده id اون رو ریختیم توی این متغیر و بنابراین id آخرین باکس رو همیشه داریم...

7asemoon
چهارشنبه 24 تیر 1394, 10:50 صبح
خوب حالا تقریبا میشه فهمید چکار میخواید بکنید...
یه متغیر باید داشته باشید که هربار که یک باکس جدید اضافه میشه از طریق کدهای ایجکس id اون باکس رو بذاره تو این متغیر با این کار آخرین باکسی که نمایش داده شده id اون رو ریختیم توی این متغیر و بنابراین id آخرین باکس رو همیشه داریم...

میشه با استفاده از کد توضیح بدین

7asemoon
چهارشنبه 24 تیر 1394, 10:53 صبح
کدم به این صورت هست



<select name="category" id="menu" onchange="show_subMenu()">
<option value="">یک منو را انتخاب کنید</option>
<?php
$tblmenu=$db->fetch_all("SELECT * FROM tbl_category WHERE `parent_id`=0");
foreach($tblmenu as $tblmenu)
{
echo '<option value="'.$tblmenu['id'].'">'.$tblmenu['menu'].'</option>';
}
?>
</select>

<div class="form-group" id="submenu">

</div>




function show_subMenu()
{
$.post('post/html.php',{menuid:$("#menu").val()}
,function(response)
{
$("#submenu").html(response);
});
}




if(isset($_POST['menuid'])&&!empty($_POST['menuid']))
{?>
<div class="col-lg-6">
<select id="submenu">
<option value="">یک زیر منو را انتخاب کنید</option>
<?php
$tblzirmenu=$db->fetch_all("SELECT * FROM tbl_category WHERE `parent_id`=".$_POST['menuid']."");
foreach($tblzirmenu as $tblzirmenu)
{
echo '<option value="'.$tblzirmenu['id'].'">'.$tblzirmenu['menu'].'</option>';
}
?>
</select>
</div>
<?php } ?>

7asemoon
چهارشنبه 24 تیر 1394, 15:52 عصر
لطفا راهنمایی کنید

H:Shojaei
پنج شنبه 25 تیر 1394, 13:11 عصر
سناریویی که این کار رو انجام مبدین واسه این مورد درست نیست...
شما باید این تگ select رو که توی فایل php میسازید رو توی javascript قسمت ajax اون رو بسازید...
به این صورت که dataType تابع ajax رو برابر با json میذارید و دیتاها گه همون دیتاهای سلکت هستن و به صورت آرایه از دیتابیس توی فایل php میگیرید رو json_encode کنید و توی صفحه echo کنید...
و اینجا هربار که این سلکت ساخته میشه همونطور که گفتم توی بخش ajax همه اطلاعات این سلکت رو دارید دیگه id اون رو میذاریم توی یک متغیر تا بفهمیم آخرین سلکتی که گرفتیم id اون چی بوده و ازش استفاده کنیم...
یه مثال از کدهای خودم میزنم ببینید:

$.ajax({
url: URL + 'ajaxes/newGroup.php',
type: 'post',
data: {/*data*/},
dataType: 'json',
success: function (data) {
var latestSelectId=data['selectId'];
for(/*peymayeshe data*/)
{
//create select tag
}
}
});



$posts=$sqlOPR->select('posts',);
echo json_encode($posts);