Uploadpath CodeIgniter - PullRequest
       11

Uploadpath CodeIgniter

3 голосов
/ 16 декабря 2011

Я создал папку загрузки в корне CodeIgniter, которая принимает все загруженные изображения из формы.Затем путь загрузки отправляется в базу данных.Позже я получаю всю информацию из базы данных на странице просмотра.Я пытаюсь заставить все изображения отображаться на загруженной странице просмотра, но путь загрузки добавляет слишком много к URL.

конфигурация загрузки выглядит следующим образом:

$config = array(
        'upload_path'   => './uploads/',
        'allowed_types' => 'gif|jpg|png',
        'max_size'  => '6000',
        'max_width' => '2068',
        'max_height'    => '1032',
        'encrypt_name'  => true,
);

и страница просмотра выглядит следующим образом:

                                             <tr>                
                                                 <td><img src="<?php echo $pet->filepath?          
                                                     >" alt="pet photo"></img><br/></td>
                                                    <td><?php echo $pet->pet_name?><br/>      
                   </td>
                                                    <td><?php echo $pet->species."      "; 
               ?></td>
                                                    <td><?php echo $pet->breed; ?></td>
                                                    <td><?php echo $pet->gender; ?></td>
                                                    <td><?php echo $pet->color; ?></td>
                                                    <td><?php echo $pet->comments; ?></td>


                                            </tr>

                                    <?php endforeach; ?>

, когда я проверяю URL изображения, когда я проверяю представление, оно отображается как: CodeIgniter_2.1.0 / CodeIgniter_2.1.0 / index.php / upload / uploads/beagle.jpg

но это должно быть: CodeIgniter_2.1.0 / CodeIgniter_2.1.0 / uploads / beagle.jpg

кто-нибудь знает, как это изменить ??

1 Ответ

1 голос
/ 16 декабря 2011

Существует простое учебное пособие здесь , которое объясняет, как создать перезапись URL, которая удаляет index.php.Вы можете отредактировать его следующим образом (не проверено):

RewriteEngine on
RewriteCond $1 !^CodeIgniter_2.1.0/CodeIgniter_2.1.0/(index\.php|uploads.*|robots\.txt).*$
RewriteRule ^(.*)$ ^CodeIgniter_2.1.0/CodeIgniter_2.1.0/index.php/$1 [L]

Затем вы должны (опять же, не проверено) получить доступ к изображению в CodeIgniter_2.1.0/CodeIgniter_2.1.0/uploads/beagle.jpg

РЕДАКТИРОВАТЬ: woops, неправильно понял вопрос, вы хотите CodeIgniter_2.1.0/CodeIgniter_2.1.0/index.php/upload/uploads/beagle.jpg -> CodeIgniter_2.1.0/CodeIgniter_2.1.0/uploads/beagle.jpg правильно?

В этом случае, сделайте снимок:

RewriteEngine on
RewriteRule ^.*/index.php/upload/uploads(.*)$ /CodeIgniter_2.1.0/CodeIgniter_2.1.0/uploads$1 [L]

Это говорит любой URL, который содержит /index.php / upload / uploads следует перенаправить на /CodeIgniter_2.1.0/CodeIgniter_2.1.0/uploads/whatever

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...