نمایش نتایج 1 تا 19 از 19

نام تاپیک: ایجاد دسته بندی مطالب

  1. #1

    ایجاد دسته بندی مطالب

    سلام
    ارسال-حذف-ویرایش مطلب در سایت را یادگرفتم. اگر بخوام چندین دسته مختلف در سایت ایجاد کنم تا قبل از ارسال مطلب مشخص کنم کدام دسته بندی ذخیره بشه کد نویسیش رو کمکم میکنید؟

    جدول هاشو بلدم:

    content
    -id
    -title
    -fullcontent

    category
    -id
    -id_content
    -title

  2. #2
    کاربر دائمی
    تاریخ عضویت
    اسفند 1388
    پست
    381

    نقل قول: ایجاد دسته بندی مطالب

    سلام من برای دسته بندی مطالبم در طراحی چه با asp.net , و چه با code iginiter اومدم کلا جدولهای ورودپرس رو برسی کردک دیدم خوب و دقیق هرکاری رو انجام میده شکل چدول دسته بندی مطالب به این شکل میشه



    ضمیمه 123922



    نگاه هر دسته یا خودش والد هست و یا پدر و یا پدرانی داره دسته ها همه در جدول term هستن اگر بدون والد باشه که پدرش رو من 0 در نظر میگرفتم یعنی در جدول termtaxonomy فیلد ستون parent رو 0 پر میکنم در غیر این صورت ایدی پدر رو بهش میدم

    یه مثلا ساده
    id category parent
    0 اموزشی 1
    1 برنامه نویسی وب 2
    1 برنامه نویسی ویندوز 3
    2 پی اچ پی 4
    و الی اخر



    حالا نحوه ذخیره کرده که یه دستور insert هست که طبق فرمایش خودتون بلدی
    نحوه select هم به این صورت هست و دخیره مطلب با دسته پی اچ پی اینه که ایدی term رو ذخیره کن و موقع فراخونی که بخواهیی پست رو نمایش بدی بر اساس ایدی term موجود در جدول پست ها به جدول termtaxonomy یک select بزن و خود دسته و پدرش رو برگردون

  3. #3

    نقل قول: ایجاد دسته بندی مطالب

    میشه یک نمونه کد بزارین برای insert کردن مطلب دخل دسته بندی برنامه نویسی وب یا هرچیزی که بشه توی مثال مشخص کرد. ممنونم

  4. #4

    نقل قول: ایجاد دسته بندی مطالب

    لطفا پاسخ بدین نتونستم مشکلمو حل کنم

  5. #5
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    شما در کنترلری که قراره فایل view برای درج مطلب رو نشون بده ، باید تمام دسته ها را ارسال کنید .
    اول اینو انجام بدید ، بعد بقیه شو بگم .

    $data['data'] = $this->model_section->get_subsection();
    $this->_out('admin','article','pageArticle',$data);


    مدل section همون category شماست .
    توی select,option از فایل view ، آیدی های category میشن value و نام category ها میشن label

    <select name="Section">
    <?php foreach($data as $row){ ?>
    <option value="<?php echo $row->section_id ;?>"><?php echo $row->title ;?></option>
    <?php }?>
    </select>

  6. #6

    نقل قول: ایجاد دسته بندی مطالب

    سلام

    میشه کامل تر توضیح بدین؟ تو فولدر Model چه کدی بنویسم براش؟
    دستور _out کاربردش چیه؟ منقرض نشده توی نسخه جدید؟ ( داخل user_guide ننوشته بودن )

  7. #7
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    شما گفتید حذف ، ویرایش و ... رو یاد گرفتید .
    این هم شبیه بقیه ست .
    شما احتمالا تو فولدر مدل برای هر table یک مدل نوشتید . درسته ؟
    حالا برای مدل section یا همون category خودتون باید یک مدل نوشته باشید که یکی از متدهاش این باشه :




    public function get_subsection(){
    $data = $this->db->get('tb_section');
    return $data->result();
    }


    به جای _OUT شما دستور load->view رو استفاده کنید :

    $this->load->view('article/newArticle',$data)

  8. #8

    نقل قول: ایجاد دسته بندی مطالب

    حقیقتش با model مشکل دارم. خیلی وقت پیش هم داشتم تمرین میکردم ولی باز همین مشکلو داشتم. کدهامو ببینید:

    Controller
        public function index(){        $this->load->model('section_model');        $data['test'] = $this->section_model->get_category_content();        $this->load->view('content',$data);    }


    Model
    class section_model extends CI_Model{
    function get_category_content(){ $data = $this->db->get('category'); return $data->result(); }


    View
    <?phpforeach($data->result() as $row){
    echo $row->id;}
    ?>

  9. #9
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    کد view رو باید اینطور تغییر بدید .

    <?php foreach($test as $row)
    {echo $row->id;}?>


    چون اطلاعات از کنترلر به view ارسال میشن . الان اینو بنویسید ببینید خروجی صحیحه یا نه ؟

  10. #10

    نقل قول: ایجاد دسته بندی مطالب

    خطاهای زیر داده میشه

    A PHP Error was encountered

    Severity: Notice
    Message: Undefined variable: test
    Filename: views/content.php
    Line Number: 4

    A PHP Error was encountered

    Severity: Warning
    Message: Invalid argument supplied for foreach()
    Filename: views/content.php

    Line Number: 4

  11. #11
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    اسم فایل مدل model_section.php :

    <?php
    class Model_section extends CI_Model
    {
    public function get_all(){
    $data = $this->db->get('tb_section');
    return $data->result();
    }
    }



  12. #12

    نقل قول: ایجاد دسته بندی مطالب

    خطاها رفع شد
    میخوام جدول content را نمایش بدم که فیلدهای ( id, category_id , title, content ) شامل میشه. category_id مربوط به جدول دسته بندی ها میشه
    model این قسمت چی میشه؟ توی php عادی چندین بار نوشتم اما از روزی که CI تمرین میکنم همه چیزو قاطی کردم

  13. #13
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    فرم view مربوط به content رو درست کردید ؟ باید دسته هایی که میخونید رو به درستی تو سلکت آپشن نمایش بدید اول .

    <select name="Section">
    <?php foreach($data as $row){ ?>
    <option value="<?php echo $row->section_id ;?>"><?php echo $row->title ;?></option>
    <?php }?>
    </select>

    اگه اینو درست کردید حالا اطلاعات رو از این فرم به کنترلر بفرستید و بعد برید سراغ کدنویسی مدل

  14. #14

    نقل قول: ایجاد دسته بندی مطالب

    بله اطلاعات داخل view نمایش داده شد.

    توی پنل مدیریت تمام پست ها نمایش داده بشه ( این مورد که ساده هست )، ولی چون جدول مطالب فیلدی بنام category_id داره که فقط آیدی دسته بندی را داخلش ذخیره میکنم اگر get کنم نمایش پست هارو، فیلد مربوط به دسته بندی رو هم به شکل عدد نشون میده ( آیدی 2 و... ). چطوری توی مدیریت بجای نمایش آیدی ذخیره شده داخل جدول مطالب؛ نام اصلی دسته بندی از جدول category را ارسال کنم؟

  15. #15
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    شما تو کدایگنایتر میتونید ، تو قسمت view هم به مدل دسترسی داشته باشید .
    اونجایی که بهتون عدد میده ، یکی از متدهای مدل section رو به این صورت فراخوانی میکنید :

    $this->model->selectId($category_id)


    این رو هم در مدل section باید داشته باشید

    public function selectId($id){
    $this->db->where('section_id',$id);
    $result = $this->db->get('tb_section');
    return $result->result();
    }

  16. #16

    نقل قول: ایجاد دسته بندی مطالب

    پریا خانم، کنترلر کد دومی که دادین چی میشه؟ باید دوتا دستور where گذاشت درسته؟ اولین نام آیدی category را برگردونه و دومی تمام فیلدهارو نمایش بده؟

  17. #17
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    الان شما دارید مدیریت رو درست میکنید یا قسمت کاربری ؟
    اگه تو قسمت مدیریت هستید که ابتدا لیستی از content رو با نمایش فیلدهایی مثل title , date و ... نشون میدید ، بعد احتمالا روی دکمه ی edite کلیک میکنید تا مشخصات بیشتر اون رو نمایش بدید . درسته ؟
    از این به بعد رو مشکل دارید ؟ که section اون مطلب و بقیه ی فیلدهاش رو چطور نشون بدید ؟

  18. #18

    نقل قول: ایجاد دسته بندی مطالب

    بله. البته فیلم برای ویرایش و حذف کردن پیدا کردم اما توی اون فیلم فقط یدونه جدول news بود و مثل الان جدولی برای ایجاد دسته بندی و جدول ارسال مطالب وجود نداشت. من میخوام وقتی کاربر ویرایش را زد، بجای اینکه از جدول content فیلد id_category را نمایش بده ( مثلا 2 ) ، نام دسته بندی را بنویسه ( که 2 در جدول category اینترنت هست ).

  19. #19
    کاربر دائمی آواتار pary_daryayi
    تاریخ عضویت
    آذر 1391
    محل زندگی
    گرگان
    پست
    375

    نقل قول: ایجاد دسته بندی مطالب

    این کدها رو من قبلا تو اولین برنامه ام نوشتم ، ببینید و ایده بگیرید .
    با این فرض که شما قسمت لیست شدن مطالب رو نوشتید و حالا میخواید روی دکمه ی edit کلیک کنید

    کنترلر :

    public function editArticle(){
    $data = $this->model_article->selectId();
    foreach ($data as $row){
    $data['id'] = $row->article_id;
    $data['sid'] = $row->ection_id;
    $data['topic'] = $row->topic;
    $data['keywords'] = $row->keywords;
    $data['summery'] = $row->summery;
    $data['content'] = $row->content;
    $data['writer'] = $row->writer;
    }
    $data['sdata'] = $this->model_section->get_subsection();
    $this->_out('admin','article','editArticle',$data);
    }



    مدل article و متد selectId :

    public function selectId(){
    $id = $this->uri->segment(4);
    $this->db->where('article_id',$id);
    $this->db->order_by("article_id", "DESC");
    $result = $this->db->get('mblog_article');
    return $result->result();
    }


    قسمتی از مدل section و متد get_subsection


    public function get_subsection(){
    $data = $this->db->get('mblog_section');
    return $data->result();
    }


    VIEW: مربوط به editArticle

    <?php echo validation_errors();
    echo form_open_multipart('admin/manage_article/updateArticle');
    echo form_hidden('id',$id);
    ?>
    <table border="0" style="text-align:right">
    <tr >
    <td><span>عنوان :</span></td>
    <td><?php
    echo form_input('Topic',$topic);
    ?></td>
    </tr>
    <tr>
    <td><span>کلمات کلیدی :</span></td>
    <td><?php echo form_input('Keywords',$keywords);?></td>
    </tr>
    <tr>
    <td><span>بخش</span></td>
    <td>
    <select name="Section">
    <?php foreach($sdata as $row){ ?>
    <option value="<?php echo $row->section_id ;?>" <?php if($sid==$row->section_id){?> selected="selected" <?php }?>>
    <?php echo $row->title ;?></option>
    <?php }?>
    </select>
    </td>
    </tr>
    <tr>
    <td><span>تصویر :</span></td>
    <td><input type="file" name="userfile" size="20"/></td>
    </tr>
    <tr>
    <td><span>چکیده :</span></td>
    <td>
    <?php echo form_textarea('Summery',$summery,'class="redactor" ');?>
    </td>
    </tr>
    <tr>
    <td><span>متن :</span></td>
    <td>
    <?php echo form_textarea('Content',$content,'class="redactor" ');?>
    </td>
    </tr>
    <tr>
    <td></td>
    <td><?php echo form_submit('Submit','ویرایش','class="submit "');?></td>
    </tr>
    </table>
    <?php echo form_close();
    }
    ?>

تاپیک های مشابه

  1. سوال: دسته بندی مطالب سایت
    نوشته شده توسط JustAcMilan در بخش ASP.NET Web Forms
    پاسخ: 4
    آخرین پست: دوشنبه 18 شهریور 1392, 18:15 عصر
  2. سوال: دسته بندی مطالب بر اساس تاریخ
    نوشته شده توسط Jason.Bourne در بخش PHP
    پاسخ: 15
    آخرین پست: سه شنبه 05 شهریور 1392, 10:16 صبح
  3. سوال: دسته بندی مطالب در PHP
    نوشته شده توسط amin7x در بخش PHP
    پاسخ: 2
    آخرین پست: دوشنبه 20 آذر 1391, 15:41 عصر
  4. سوال: ایجاد دسته بندی
    نوشته شده توسط asal_afs در بخش ASP.NET Web Forms
    پاسخ: 1
    آخرین پست: سه شنبه 21 دی 1389, 18:27 عصر
  5. سوال: ایجاد دسته بندی
    نوشته شده توسط amirepsilon در بخش PHP
    پاسخ: 14
    آخرین پست: سه شنبه 26 آذر 1387, 21:59 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •