PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (6): [1] 2 3 4 5 6 »

> Найдено сообщений: 81
СЕРьГА Отправлено: 19 Января, 2012 - 15:15:54 • Тема: Ошибка БД • Форум: Вопросы новичков

Ответов: 4
Просмотров: 276
Всё, разобрался. Извините, пожалуйста!
СЕРьГА Отправлено: 18 Января, 2012 - 17:26:48 • Тема: Ошибка БД • Форум: Вопросы новичков

Ответов: 4
Просмотров: 276
Цитата:
открой напрямую для проверки через mysql_connect

Цитата:
я работаю с Navicat, там открывается.


извините, я сначала не так понял вас. да, я попробовал открыть через mysql_connect. Всё то же самое(
СЕРьГА Отправлено: 18 Января, 2012 - 11:47:15 • Тема: Ошибка БД • Форум: Вопросы новичков

Ответов: 4
Просмотров: 276
caballero пишет:
значит правов нет на такую БД


почему это?
Цитата:
или неправильно задано имя или еще чего


несколько раз уж проверял - всё правильно.
Цитата:
открой напрямую для проверки через mysql_connect


я работаю с Navicat, там открывается.
СЕРьГА Отправлено: 18 Января, 2012 - 11:08:41 • Тема: Ошибка БД • Форум: Вопросы новичков

Ответов: 4
Просмотров: 276
Здравствуйте! У меня вот какая проблема... Сделал я значит базу данных "cicms"', прописал его, как и положено, в файле database.php (движок у меня CodeIgniter), запускаю в браузере контроллер, в котором вызывается таблица с этой БД, но браузер выводит сообщение:

Ошибка БД

Невозможно выбрать базу данных cicms

Помогите, пожалуйста!
СЕРьГА Отправлено: 25 Октября, 2011 - 20:19:09 • Тема: Использование библиотекаря • Форум: Если скрипт не работает

Ответов: 4
Просмотров: 2338
Извините, я забыл написать что подключаю эту функцию через этот обработчик:

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?
  2. // Прежде всего, устанавливаем свои каталоги поиска модулей.
  3. // Это, по нашей договоренности, — текущий в данный момент каталог.
  4. $INC[]=getcwd();
  5. // Проверяем, не пытается ли пользователь запустить обработчик напрямую,
  6. // минуя Apache — например, путем набора в браузере адреса
  7. // /lib/libhandler.php. Так как адрес, введенный пользователем,
  8. // всегда передается в переменной окружения REQUEST_URI, то нужно
  9. // "бить тревогу", если переданная строка адреса встречается
  10. // в имени файла обработчика (причем в любом регистре символов).
  11. // Мы не забыли отрезать в этой строке часть после ?, потому что
  12. // она будет мешать при сравнении с именем файла.
  13. // К сожалению, похоже, это единственный переносимый между операционными
  14. // системами способ проверки легальности запуска обработчика.
  15. $FileName=strtr(__FILE__,"\\","/");
  16. $ReqName=ereg_Replace("\\?.*","",strtr(getenv("REQUEST_URI"),"\\","/"));
  17. if(eregi(quotemeta($ReqName),$FileName)) {
  18. // Выводим сообщение об ошибке
  19. include "libhandler.err";
  20. // Записываем в журнал данные о пользователе
  21. $f=fopen("libhandler.log","a+");
  22. fputs($f,date("d.m.Y H:i.s")." $REMOTE_ADDR - Access denied\n");
  23. fclose($f);
  24. // Завершаем работу
  25. }
  26. // Все в порядке — корректируем переменные окружения в соответствии
  27. // с запрошенным пользователем адресом.
  28. @putenv("REQUEST_URI=".
  29. $GLOBALS["HTTP_ENV_VARS"]["REQUEST_URI"]=
  30. $GLOBALS["REQUEST_URI"]=
  31. getenv("QUERY_STRING")
  32. );
  33. @putenv("QUERY_STRING=".
  34. $GLOBALS["HTTP_ENV_VARS"]["QUERY_STRING"]=
  35. $GLOBALS["QUERY_STRING"]=
  36. ereg_Replace("^[^?]*\\?","",getenv("QUERY_STRING"))
  37. );
  38. // Подключаем библиотекарь
  39. include "librarian.phl";
  40. // Здесь можно выполнить еще какие-нибудь действия...
  41. // . . .
  42. // Запускаем тот сценарий, который был запрошен пользователем
  43. chdir(dirname($SCRIPT_FILENAME));
  44. include $SCRIPT_FILENAME;
  45. ?>


а в файле .htaccess я написал вот это:

CODE (htmlphp):
скопировать код в буфер обмена
  1. # Сначала связываем имя обработчика с конкретным файлом.
  2. # Знак "?" говорит серверу, что исходный URL запроса следует
  3. # передать сценарию методом GET, т. е. через QUERY_STRING.
  4. Action libhandler "/lib/libhandler.php?"
  5. # Теперь уведомляем сервер, документы какого типа мы желаем
  6. # "пропускать" через наш обработчик.
  7. AddHandler libhandler .html .htm
СЕРьГА Отправлено: 25 Октября, 2011 - 12:27:49 • Тема: Использование библиотекаря • Форум: Если скрипт не работает

Ответов: 4
Просмотров: 2338
Viper пишет:
Вам же четко написали что нет такой функции Uses()


как нет? а это?:

CODE (htmlphp):
скопировать код в буфер обмена
  1. // Загружает указанную библиотеку функций. Для поиска файла
  2. // просматривает каталоги в массиве $INC.
  3. function Uses($libname)
  4. { global $INC;
  5. static $PrevINC=""; // значение $INC при предыдущем входе
  6. static $LastFound=0; // для ускорения работы
  7. // Переводим все пути в $INC в относительные — вдруг вызывающая
  8. // программа добавила что-нибудь в массив?..
  9. AbsolutizeINC();
  10.  
  11. // Теперь просматриваем пути, начиная с того, по которому была
  12. // найдена какая-нибудь предыдущая загруженная библиотека. Скорее
  13. // всего, там окажется загружаемый сейчас модуль. Если нет —
  14. // что же, просмотрим весь список...
  15. $l=$LastFound;
  16. do {
  17. // В очередном каталоге есть файл модуля?..
  18. $dir=$INC[$LastFound];
  19. if(@is_file($file="$dir/$libname.".LibExt)) {
  20. // Сменить каталог на тот, в котором расположен модуль
  21. $cwd=getcwd();
  22. chdir(dirname($file));
  23. // Делаем доступными для модуля все глобальные переменные
  24. foreach($GLOBALS as $k=>$v) global $$k;
  25. // Включаем файл
  26. $ret=include_once($file);
  27. // Пока не вернулись в предыдущий каталог, перевести
  28. // добавленные (возможно?) пути в $INC в абсолютные
  29. AbsolutizeINC();
  30. // Вернуться
  31. chdir($cwd);
  32. return $ret;
  33. }
  34. $LastFound=($LastFound+1)%count($INC);
  35. } while($LastFound!=$l);
  36. // Ничего не вышло — "умираем"...
  37. die("Couldn't find library \"$libname\" at ".join(", ",$INC)."!");
  38. }
  39. // Корректируем некоторые переменные окружения, которые могут иметь
  40. // неверные значение, если PHP установлен не как модуль Apache
  41. @putenv("SCRIPT_NAME=".
  42. $GLOBALS["HTTP_ENV_VARS"]["SCRIPT_NAME"]=
  43. $GLOBALS["SCRIPT_NAME"]=
  44. ereg_Replace("\\?.*","",getenv("REQUEST_URI"))
  45. );
  46. @putenv("SCRIPT_FILENAME".
  47. $GLOBALS["HTTP_ENV_VARS"]["SCRIPT_FILENAME"]=
  48. $GLOBALS["SCRIPT_FILENAME"]=
  49. Url2Path(getenv("SCRIPT_NAME"))
  50.  
  51. );
  52. // На всякий случай включаем максимальный контроль ошибок
  53. Error_reporting(1+2+4+8);
  54. // ВНИМАНИЕ! После следующего закрывающего тэга
  55. // не должно быть НИКАКИХ ПРОБЕЛОВ! В противном случае
  56. // сценарий, подключающий библиотекаря, будет выводить в самом
  57. // начале своей работы этот пробел, что недопустимо при
  58. // работе с Cookies.
  59. }
СЕРьГА Отправлено: 24 Октября, 2011 - 21:40:37 • Тема: Использование библиотекаря • Форум: Если скрипт не работает

Ответов: 4
Просмотров: 2338
Здравствуйте!) И снова я) Пытаюсь открыть с помощью библиотекаря модуль, находящийся в другом файле, но не получается. Это сценарий, в котором я использую библиотекарь:

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?
  2. Uses("files.phl"); // подключаем модуль files.phl
  3. // Все — теперь можно использовать модуль
  4. $Content=ReadAllFile("txt.txt"); // читаем весь файл myfile.txt
  5. $Hash=ReadKeyValFile("keyval.txt"); // читаем файл формата key=value
  6. // ... и другие функции, которые, возможно, присутствуют в модуле
  7. echo $Content;
  8. ?>


а это сам библиотекарь:

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?
  2. if(!defined("LIBRARIAN_LOADED")) {
  3. define("LIBRARIAN_LOADED",1);
  4. // Расширение библиотечных файлов по умолчанию
  5. define("LibExt","phl");
  6. // Пути поиска библиотек. Если начинаются с точки, то поиск
  7. // ВСЕГДА ведется относительно текущего каталога, даже если его
  8. // сменят, в противном случае при следующем вызова Uses() будет
  9. // выполнен перевод пути в абсолютный.
  10. $INC=array(".","./lib");
  11.  
  12. // Функция преобразует указанный относительный путь в абсолютный.
  13. // Если путь уже является абсолютным (т. е. отсчитывается от корневого
  14. // каталога системы), то с ним ничего не происходит, в противном случае
  15. // используется имя текущего каталога (или заданного в $cur) с
  16. // необходимыми преобразованиями. Существование файла с полученным полным
  17. // именем не проверяется. Функция лишена некоторых недостатков
  18. // встроенной в PHP realpath() и имеет по сравнению с ней несколько
  19. // большие возможности, работая, правда, чуть медленнее.
  20. function GetAbsPath($name,$cur="") { return abs_path($name,$cur); }
  21. function abs_path($name,$cur="")
  22. { // Преобразуем обратные слэши в прямые
  23. $name=strtr(trim($name),"\\","/");
  24. // Сначала разбиваем путь по знакам "/"
  25. $Parts=explode("/",$name);
  26. $Path=($cur===""?getcwd():$cur); // начальный каталог поиска
  27. foreach($Parts as $i=>$s) if($s!=".") {
  28. // Признак корневого каталога?
  29. if(!$i && (strlen($s)>1&&$s[1]==":"||$s=="")) $Path=$s;
  30. // Ссылка на родительский каталог?
  31. elseif($s=="..") {
  32. // Если это уже корневой каталог, то куда спускаться?..
  33. if(strlen($Path)>1 && $Path[1]==":") continue;
  34. // Иначе используем dirname()
  35. $p=dirname($Path);
  36. if($p=="/"||$p=="\\"||$p==".") $Path=""; else $Path=$p;
  37. }
  38. // Иначе просто имя очередного каталога
  39. elseif($s!=="") $Path.="/$s";
  40. }
  41. return ($Path!==""?$Path:"/");
  42. }
  43. // Преобразует URL в абсолютный файловый путь.
  44. // Т. е. если адрес начинается со слэша, то результат рассматривается
  45. // по отношению к каталогу DOCUMENT_ROOT, а если нет — то относительно
  46. // dirname($SCRIPT_NAME). Конечно, функция не безупречна (например, она
  47. // не умеет обрабатывать URL, заданные Alias-директивами Apache, но в
  48. // большинстве случаев это и не нужно.
  49.  
  50. function Url2Path($name)
  51. { $curUrl=dirname($GLOBALS["SCRIPT_NAME"]);
  52. $url=abs_path(trim($name),$curUrl);
  53. return getenv("DOCUMENT_ROOT").$url;
  54. }
  55. // Превращает все пути в списке $INC в абсолютные, однако делает это
  56. // не каждый раз, а только если массив изменился с момента последнего
  57. // вызова.
  58. function AbsolutizeINC()
  59. { global $INC;
  60. static $PrevINC=""; // значение $INC при предыдущем входе
  61. // Сначала проверяем — изменился ли $INC. Если да, то преобразуем
  62. // все пути в массиве в относительные, иначе ничего не делаем.
  63. // Нам это нужно только из соображений повышения производительности
  64. // функции.
  65. if($PrevINC!==$INC) {
  66. // Мы не можем использовать foreach, т. к. нам надо
  67. // модифицировать массив
  68. for($i=0; $i<count($INC); $i++) {
  69. $v=&$INC[$i];
  70. if($v[0]=="." && (strlen($v)==1 || $v[1]=='\\' || $v[1]=='/'))
  71. continue;
  72. $v=abs_path($v);
  73. }
  74. // Запоминаем текущее состояние массива
  75. $PrevINC=$INC;
  76. }
  77. }
  78. // Загружает указанную библиотеку функций. Для поиска файла
  79. // просматривает каталоги в массиве $INC.
  80. function Uses($libname)
  81. { global $INC;
  82. static $PrevINC=""; // значение $INC при предыдущем входе
  83. static $LastFound=0; // для ускорения работы
  84. // Переводим все пути в $INC в относительные — вдруг вызывающая
  85. // программа добавила что-нибудь в массив?..
  86. AbsolutizeINC();
  87.  
  88. // Теперь просматриваем пути, начиная с того, по которому была
  89. // найдена какая-нибудь предыдущая загруженная библиотека. Скорее
  90. // всего, там окажется загружаемый сейчас модуль. Если нет —
  91. // что же, просмотрим весь список...
  92. $l=$LastFound;
  93. do {
  94. // В очередном каталоге есть файл модуля?..
  95. $dir=$INC[$LastFound];
  96. if(@is_file($file="$dir/$libname.".LibExt)) {
  97. // Сменить каталог на тот, в котором расположен модуль
  98. $cwd=getcwd();
  99. chdir(dirname($file));
  100. // Делаем доступными для модуля все глобальные переменные
  101. foreach($GLOBALS as $k=>$v) global $$k;
  102. // Включаем файл
  103. $ret=include_once($file);
  104. // Пока не вернулись в предыдущий каталог, перевести
  105. // добавленные (возможно?) пути в $INC в абсолютные
  106. AbsolutizeINC();
  107. // Вернуться
  108. chdir($cwd);
  109. return $ret;
  110. }
  111. $LastFound=($LastFound+1)%count($INC);
  112. } while($LastFound!=$l);
  113. // Ничего не вышло — "умираем"...
  114. die("Couldn't find library \"$libname\" at ".join(", ",$INC)."!");
  115. }
  116. // Корректируем некоторые переменные окружения, которые могут иметь
  117. // неверные значение, если PHP установлен не как модуль Apache
  118. @putenv("SCRIPT_NAME=".
  119. $GLOBALS["HTTP_ENV_VARS"]["SCRIPT_NAME"]=
  120. $GLOBALS["SCRIPT_NAME"]=
  121. ereg_Replace("\\?.*","",getenv("REQUEST_URI"))
  122. );
  123. @putenv("SCRIPT_FILENAME".
  124. $GLOBALS["HTTP_ENV_VARS"]["SCRIPT_FILENAME"]=
  125. $GLOBALS["SCRIPT_FILENAME"]=
  126. Url2Path(getenv("SCRIPT_NAME"))
  127.  
  128. );
  129. // На всякий случай включаем максимальный контроль ошибок
  130. Error_reporting(1+2+4+8);
  131. // ВНИМАНИЕ! После следующего закрывающего тэга
  132. // не должно быть НИКАКИХ ПРОБЕЛОВ! В противном случае
  133. // сценарий, подключающий библиотекаря, будет выводить в самом
  134. // начале своей работы этот пробел, что недопустимо при
  135. // работе с Cookies.
  136. }
  137. ?>


а это модуль files.phl:

CODE (htmlphp):
скопировать код в буфер обмена
  1. <?
  2. // Внимание! Так указывается дополнительный каталог для поиска модулей.
  3. // Запись означает, что библиотекарь должен искать модули также и в
  4. // подкаталоге OtherModules/dk текущего каталога
  5. $INC[]="OtherModules/dk";
  6. // Подключение каких-то других модулей, в которых нуждается files.phl
  7. Uses("SomeOtherModule");
  8. Uses("AndOtherModuleToo");
  9.  
  10. // Константа: символы перевода строки
  11. define("CRLF",getenv("COMSPEC")?"\r\n":"\n");
  12. // Читает все содержимое файла $fname и возвращает его
  13. function ReadAllFile($fname)
  14. { $f=fopen($fname,"r"); if(!$f) return "";
  15. $Cont=fread($f,1000000); fclose($f);
  16. return $Cont;
  17. }
  18. // Читает файл $fname, строки которого имеют формат
  19. // ключ1=значение1
  20. // Возвращает ассоциативный массив с указанными в файле ключами
  21. function ReadKeyValFile($fname)
  22. { $Cont=@File($fname); if(!@is_array($Cont)) return array();
  23. $Hash=array();
  24. foreach($Cont as $i=>$st) {
  25. if(!ereg("^([^=]+)=(.*)",$st,$regs)) continue;
  26. $Hash[trim($regs[1])]=trim($regs[2]);
  27. }
  28. return $Hash;
  29. }
  30. ?>


При запуске браузер выводит:


Fatal error: Call to undefined function Uses() in Z:\home\localhost\www\site\lib\test.php on line 3
СЕРьГА Отправлено: 17 Октября, 2011 - 16:20:29 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
illy пишет:
смысл есть Ха-ха
Вот те код и аська 478761132
На локальном всё работает
Спойлер (Отобразить)


Спойлер (Отобразить)


извини, там я по неосторожности лишний символ написал(( всё работает Прыгаю до потолка большущее спасибо!!!
(Добавление)
illy пишет:
if(!ereg("^(.*)\\.(gif|jpg|png)$",$e,$P)) continue;

откуда там $P взялось? Не понял



этот код я взял из одной книги по пхп))
СЕРьГА Отправлено: 17 Октября, 2011 - 16:08:24 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
LIME пишет:
Ребята вам есть смысл аськами обменяться ))


в аське ж неудобно коды писать))
СЕРьГА Отправлено: 17 Октября, 2011 - 15:47:39 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
неудобно уже говорить, но всё равно пустой экран. Смущён
СЕРьГА Отправлено: 17 Октября, 2011 - 15:03:19 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
illy пишет:
if(@$doUpload) {
как глобальная переменная
может из-за неё не работает. надо if($_POST['doUpload']) {


увы, всё равно(((
СЕРьГА Отправлено: 17 Октября, 2011 - 14:14:31 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
illy пишет:
А код добавил в photo.php ?

PHP:
скопировать код в буфер обмена
  1. krsort($Photos);
  2. // Данные для вывода готовы. Дело за малым — оформить страницу.
  3. foreach($Photos as $n=>$Img) {
  4.    echo '<img src='.$Img['url'].' '.$Img['wh'].' alt="Добавлена '.date("d.m.Y H:i:s",$Img['time']).'">';
  5.    }


ну да.
СЕРьГА Отправлено: 17 Октября, 2011 - 13:17:28 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
illy пишет:
СЕРьГА пишет:
да, но как тогда должен выглядеть код отправки данных? как я понимаю, там форича уже быть не должно?

зачем он там нужен, если $Photos находится в photo.php ?


сделал, но после отправки данных лишь пустой браузер.
СЕРьГА Отправлено: 17 Октября, 2011 - 12:27:26 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
morosit пишет:
СЕРьГА пишет:
а почему нет??
а откуда берется переменная $File?


как откуда?

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.     <input type=file name=File><br>
СЕРьГА Отправлено: 17 Октября, 2011 - 11:19:28 • Тема: Ошибка в коде • Форум: Если скрипт не работает

Ответов: 95
Просмотров: 19834
illy пишет:
Фотки грузятся в папку img норм.
А вот на странице отправки фото ошибка
Warning: Invalid argument supplied for foreach() in z:\home\test1.ru\www\phpsu\sphoto.php on line 7
откуда ему брать $Photos если его нету?

вставил в photo.php

PHP:
скопировать код в буфер обмена
  1. krsort($Photos);
  2. // Данные для вывода готовы. Дело за малым — оформить страницу.
  3. foreach($Photos as $n=>$Img) {
  4.    echo '<img src='.$Img['url'].' '.$Img['wh'].' alt="Добавлена '.date("d.m.Y H:i:s",$Img['time']).'">';
  5.    }
  6.  

и вывело фотки с датой добавления


да, но как тогда должен выглядеть код отправки данных? как я понимаю, там форича уже быть не должно?

Страниц (6): [1] 2 3 4 5 6 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB