2013-06-26 34 views
0

我是(不是一個)web開發新手(主要是桌面開發人員),並且已經遇到了使用CodeIgniter的問題,它是日曆庫。CodeIgniter日曆庫:追加到當前URL末尾的URL

我的問題是,當我生成日曆時,我傳遞給函數的URL被追加到他當前url的末尾!以下是相關代碼:

//鏈接生成代碼

//Get numbers of days in month 
     $day_count = cal_days_in_month(CAL_GREGORIAN, $month, $year); 

     //For each day of the month, check for appointments 
     for($i = 1; $i <= $day_count; $i++) 
     { 
      //Create date array 
      $date = array 
      (
        'year' => $year, 
        'month' => $month, 
        'day' =>$i 
      ); 


      if ($this->appointment_model->get_appointment_dates($date)) 
      { 
       //If there is an appointment, add link 
       $appointment_data[$i] = 'view_day'. '/' . $year . '/' .$month; 
      } 
     } 

//日曆模板

 $calendar_template =' 

     {table_open}<table border="1" cellpadding="0" cellspacing="0">{/table_open} 

     {heading_row_start}<tr>{/heading_row_start} 

     {heading_previous_cell}<th><a href="{previous_url}">&lt;&lt;</a></th>{/heading_previous_cell} 
     {heading_title_cell}<th colspan="{colspan}">{heading}</th>{/heading_title_cell} 
     {heading_next_cell}<th><a href="{next_url}">&gt;&gt;</a></th>{/heading_next_cell} 

     {heading_row_end}</tr>{/heading_row_end} 

     {week_row_start}<tr>{/week_row_start} 
     {week_day_cell}<td>{week_day}</td>{/week_day_cell} 
     {week_row_end}</tr>{/week_row_end} 

     {cal_row_start}<tr>{/cal_row_start} 
     {cal_cell_start}<td>{/cal_cell_start} 

     {cal_cell_content}<a href="index.php/calendar/{content}/{day}">{day}</a>{/cal_cell_content} 
     {cal_cell_content_today}<div class="highlight"><a href="index.php/calendar/{content}/{day}">{day}</a></div>{/cal_cell_content_today} 

     {cal_cell_no_content}{day}{/cal_cell_no_content} 
     {cal_cell_no_content_today}<div class="highlight">{day}</div>{/cal_cell_no_content_today} 

     {cal_cell_blank}&nbsp;{/cal_cell_blank} 

     {cal_cell_end}</td>{/cal_cell_end} 
     {cal_row_end}</tr>{/cal_row_end} 

     {table_close}</table>{/table_close} 
    '; 

包含日曆的網址如下:

http://localhost:8888/AI_Project/index.php/calendar/view_appointments/2013/06 

添加到日曆的鏈接如下所示:

http://localhost:8888/AI_Project/index.php/calendar/view_appointments/2013/index.php/calendar/view_day/2013/06/18 

我不確定這是爲什麼。任何幫助,將不勝感激。讓我知道如果你還需要其他東西!

謝謝!

回答

0

請到config/config.php,找到這個變量

$config['index_page'] = 'index.php'確保它看起來像在同一個文件這種$config['index_page'] = '';

找到$config['base_url'] = '';確保它看起來像這樣

$config['base_url'] = 'http://localhost:8888/AI_Project/';

而且在覈心文件夾(系統,應用程序所在的位置)創建.htaccess文件並確保它看起來像這樣

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase /AI_Project 

    #Removes access to the system folder by users. 
    #Additionally this will allow you to create a System.php controller, 
    #previously this would not have been possible. 
    #'system' can be replaced if you have renamed your system folder. 
    RewriteCond %{REQUEST_URI} ^system.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #When your application folder isn't in the system folder 
    #This snippet prevents user access to the application folder 
    #Submitted by: Fabdrol 
    #Rename 'application' to your applications folder name. 
    RewriteCond %{REQUEST_URI} ^application.* 
    RewriteRule ^(.*)$ /index.php?/$1 [L] 

    #Checks to see if the user is attempting to access a valid file, 
    #such as an image or css document, if this isn't true it sends the 
    #request to index.php 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ index.php?/$1 [L] 
</IfModule> 

<IfModule !mod_rewrite.c> 
    # If we don't have mod_rewrite installed, all 404's 
    # can be sent to index.php, and everything works as normal. 
    # Submitted by: ElliotHaughin 

    ErrorDocument 404 /index.php 
</IfModule> 
+0

嘿,感謝您的解決方案!不幸的是,這並沒有解決我的問題。但是,非常感謝! –