Ошибка PEAR "DB.php" при использовании EasyPHP - PullRequest
0 голосов
/ 28 августа 2010

Используя EasyPHP, я обнаружил досадную ошибку, которую не могу исправить. Я искал в Интернете, получил несколько просмотров, но я ничего не получил от этих сообщений в блоге и страниц.

PHP и Apache работают нормально, но когда я хочу использовать MySQL с PEAR (который входит в EasyPHP) и когда я require("DB.php"), я получаю эту ошибку:

Warning: require(DB.php) [function.require]: failed to open stream: No such file or directory in G:\Server\EasyPHP-5.3.3\www\tester.php on line 2

Fatal error: require() [function.require]: Failed opening required 'DB.php' (include_path='.;C:\php5\pear') in G:\Server\EasyPHP-5.3.3\www\tester.php on line 2

Мой PHP-скрипт выглядит так (это всего лишь тестер):

<?php
require "DB.php";
$db = DB::connect('mysql://root@localhost');
if (DB::isError($db)) { die("Can't connect:" . $db->getMessage()); }
?>

Я попытался изменить путь "DB.php" к «PHP» -папке EasyPHP и к "Php\PEAR" и всяким странным вещам, но, похоже, ничего не работает; Я получаю ту же ошибку, но с другим путем в первой строке сообщения об ошибке.

В соответствии с этой страницей эта ошибка вызвана тем, что некоторые phar-объекты не получают pharred или что-то в этом роде - я ничего не понимаю и не понимаю обходной путь упоминается на странице .

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

Запустите распределенный phar с помощью php -d phar.require_hash = 0 go-pear.phar

Не имеет никакого смысла, если вы спросите меня :) Другой вариант - «загрузить эту нефардовую версию идиотской штуки и использовать ее». Начинаю иметь смысл, но что я тогда собираюсь делать с чокнутой грушей?

Я попробовал первый обходной путь , хотя я действительно не понимаю этого. Я открыл CMD и он сказал: C:\Users\Lasse> по умолчанию (Лассе мое имя)

Я попытался открыть папку, содержащую go-pear.phar. Это результат:

C:\Users\Lasse>cd G:\Server\EasyPHP-5.3.3\php\PEAR //*hit enter*

C:\Users\Lasse> //this was shown, typed content of the line below this
C:\Users\Lasse>php -d phar.require_hash=0 go-pear.phar //*hit enter*
'php' was not recogninzed as an intern or extern command, a program or a batchfile.

C:\Users\Lasse>

Я не могу редактировать то, что находится перед > в C:\Users\Lasse>. Каждый раз, когда я ввожу команду, которая не возвращает ошибок (т.е. в первой строке моего примера выше), отображается двойной разрыв строки с последующим значением по умолчанию C:\Users\Lasse>.

Для многих из вас это может стать сюрпризом , но я полный noob , когда дело доходит до баз данных и PEAR (высокие пять для самоиронии). Кроме того, я только что установил EasyPHP, поэтому, пожалуйста, не будьте слишком резкими.

Также ... в соответствии с phpMyAdmin (который также включен в EasyPHP) моя версия MySQL - 5.x (x означает что-то, что я не помню). Значит ли это, что я должен использовать 'mysqli://root@localhost'?

1 Ответ

1 голос
/ 12 октября 2010

Вы не можете перейти на другой диск в Windows. сделать:

 g:
 cd Server\EasyPHP-5.3.3\php\PEAR
...