FilePointer отказывается открывать - PullRequest
0 голосов
/ 16 ноября 2011

Я пытаюсь создать выпадающий список, используя текстовый файл с отдельными странами, перечисленными построчно.

Проблема в том, что по какой-то причине мой файл отказывается открываться.

Вот код:

<?php
$path = realpath(dirname(__FILE__));
require_once('upload.controller.php');
$filePath = $path.'/../includes/_notes/countries.txt';
$handle = fopen($filePath, "r");


?>
<!DOCTYPE html>
<html>
    <head>
        <link rel="stylesheet" type="text/css" href="../includes/css/adsmanager.css" />
        <script type="text/javascript" src="../includes/js/.."></script>
    </head>
    <body>
        <!--<form method="post" action="upload.controller.php">-->
            <!--<select>
                <script type="text/javascript" src="includes/js/countries.js" /></script> -->
                <?php

                    if ($handle) {

                        while(($buffer = fgets($file)) != false) {
                            var_dump($buffer);
                        }

                        if (!feof($handle)) {
                            die("failed to open file"); 
                        }
                    }
                    fclose($handle);
                ?>
            <!--</select>
        </form>-->
    </body>
</html>

вместе с моим выводом:

string(66) "/var/www/patention/modules/upload/../includes/_notes/countries.txt" failed to open file

Я что-то не так делаю? Я взял из примера, перечисленного прямо на Руководство по PHP . Вместе с это .

1 Ответ

1 голос
/ 16 ноября 2011

Путь к вашему файлу мне кажется неправильным:

"/var/www/patention/modules/upload/../includes/_notes/countries.txt"

.. используется для относительных каталогов.

Если countries.txt находится в includes/_notes/, а includes находится в родительском каталоге, где находится ваш скрипт .php, измените путь на

../includes/_notes/countries.txt

Короче, не добавляйте $path к $filePath

EDIT:

В этой строке:

while(($buffer = fgets($file)) != false)

изменить на

while(($buffer = fgets($handle)) != false)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...