include "cod_image_reg/cod_reg.php"; echo cod_reg();
Не получается подключить функцию из другого файла... Подскажите, что не так?
Вот функция:
<?php
function cod_reg (){
$f=fopen("codeg.txt", "r+b") or die("ERROR: невозможно открыть файл!");
flock($f, LOCK_SH);
$xxx=fgets($f);
fclose($f);
$codeg=unserialize($xxx);
$codx=mt_rand(0, 19); $cod=$codx.".gif";
$form_codx="<FORM METHOD=POST ACTION='cod_reg.php'><INPUT TYPE='image' src='$cod' title=''><BR><INPUT TYPE='text' NAME='user_cod'></FORM>";
$f=fopen("xcod.txt", "r+b") or die("ERROR: невозможно открыть файл!"); // процесс читатель
flock($f, LOCK_SH);
$r=fgets($f);
fclose($f);
$f=fopen("xcod.txt", "r+b") or die("ERROR: невозможно открыть файл!"); // процесс писатель
flock($f, LOCK_EX);
ftruncate($f,0);
fwrite($f, $codx);
fclose($f);
$user_cod=md5($_REQUEST['user_cod']); global $cod_reg;
if ($user_cod!==$codeg[$r]) $cod_reg=false; else $cod_reg=true;
return $form_codx; return $cod_reg;
}
?>
А такая ошибка: "Warning: fopen(codeg.txt) [function.fopen]: failed to open stream: No such file or directory in Z:\home\testtec.com\www\reg\cod_image_reg\cod_reg.php on line 4
ERROR: невозможно открыть файл!"
Спустя 4 минуты, 24 секунды (13.02.2010 - 22:35) sergeiss написал(а):
При чем тут "не получается подключить функцию"??? Если ты получаешь сообщение из функции (после попытки открытия файла) - то ты ее подключил, эту функцию. И она была вызвана.
А проблема в том, что файла нету такого, который ты хочешь открыть (скорее всего), либо у тебя нету прав на его открытие.
И еще - зачем у тебя в конце 2 раза return написано? Сработает только первый из них.
А проблема в том, что файла нету такого, который ты хочешь открыть (скорее всего), либо у тебя нету прав на его открытие.
И еще - зачем у тебя в конце 2 раза return написано? Сработает только первый из них.
Спустя 1 час, 25 минут, 20 секунд (14.02.2010 - 00:01) SemenH8 написал(а):
Дело в том, что когда я вызываю функцию из файла в котором она описана - все работает отлично...
Да, return лишний - исправил.
![sad.gif](http://phpforum.ru/html/emoticons/sad.gif)
Да, return лишний - исправил.
Спустя 6 минут, 42 секунды (14.02.2010 - 00:07) sergeiss написал(а):
Цитата (SemenH8 @ 14.02.2010 - 01:01) |
Дело в том, что когда я вызываю функцию из файла в котором она описана - все работает отлично... |
Вот оно в чем, дело-то... Я что-то не подумал об этом.
Обрати внимание на то, что подключаемый файл находится не в том же каталоге, что основной. Пусть к файлу прописан, как я понимаю, относительно подключаемого файла (т.е. он находится в каталоге cod_image_reg). А "основной" скрипт - на уровень выше, скорее всего, в корне сайта. А там - нету указанного тобой файла.
Короче говоря... Тебе надо прописать полный путь к файлу, указанному в fopen. Я только не помню, там надо указать одну точку, или две.
....fopen( './cod_image_reg/xcod.txt')... // либо так
....fopen( '../cod_image_reg/xcod.txt')... // либо этак
И тогда должно будет работать правильно.
Спустя 14 минут, 56 секунд (14.02.2010 - 00:22) SemenH8 написал(а):
Спасибо, попробую
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)