[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Функция mkdir
maxsim1982i
Взгляните на код

<?
session_start();
error_reporting(E_ALL);
if (isset($GLOBALS["go"]))
{

//проверка
$adress=$GLOBALS["adress"];
$text=$GLOBALS["text"];

$adress=strtoupper($adress);

if (empty($adress)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели получателя";
header("Location: ../page/sms.php"); exit;}

if (empty($text)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели текст сообщения";
header("Location: ../page/sms.php"); exit;}

//удаление тегов
$adress = htmlspecialchars($adress);
$text = htmlspecialchars($text);

$dir = opendir("../data") or die ("error");


while ($d = readdir($dir))
{
if (is_dir($d))
{
$d=trim($d);
if ($d===$adress)
mkdir("../data/$adress/".$HTTP_SESSION_VARS["nomer"],0770);
else
{
mkdir("../data/$adress",0770)
mkdir("../data/$adress/".$HTTP_SESSION_VARS["nomer"],0770);
}
}
}
closedir($dir);
header ("Locattion: ../page/start.php");}
?>

сценарий проверяет наличи подпапки с именем $adress в каталоге data и если папка существует то вней создаёться ещё одна с именем $HTTP_SESSION_VARS["nomer"], в противном случае создаёться две папки $adress и $HTTP_SESSION_VARS["nomer"]. При работе скрипт выдаёт ошибку

Warning: mkdir() [function.mkdir]: File exists in c:\web5\www\pro\script\sms1.php on line 34

Warning: mkdir() [function.mkdir]: File exists in c:\web5\www\pro\script\sms1.php on line 34

Warning: Cannot modify header information - headers already sent by (output started at c:\web5\www\pro\script\sms1.php:34) in c:\web5\www\pro\script\sms1.php on line 43

подскажите что не правильно



Спустя 1 час, 35 минут, 10 секунд (12.04.2009 - 08:00) Kuliev написал(а):

Спустя 43 минуты, 24 секунды (12.04.2009 - 08:43) kirik написал(а):
PHP
$dir opendir("../data") or die ("error");


while (
$d readdir($dir))
{
if (
is_dir($d))
{
$d=trim($d);
if (
$d===$adress)
mkdir("../data/$adress/".$HTTP_SESSION_VARS["nomer"],0770);
else
{
mkdir("../data/$adress",0770)
mkdir("../data/$adress/".$HTTP_SESSION_VARS["nomer"],0770);
}
}
}
closedir($dir);

что это за код еще такой? Вполне хватит этого дл твоих нужд:
PHP
if(file_exists('../data/'.$adress.'/'))
{
    
mkdir('../data/'.$adress.'/'.$HTTP_SESSION_VARS['nomer'].'/'0770);
}
else
{
    
mkdir('../data/'.$adress.'/'0770);
    
mkdir('../data/'.$adress.'/'.$HTTP_SESSION_VARS['nomer'].'/'0770);
}


Спустя 3 часа, 6 минут, 41 секунда (12.04.2009 - 11:50) maxsim1982i написал(а):
поменял опять только работает на половину. папки создаёт а вот header не работает почему то

Спустя 8 часов, 3 минуты, 19 секунд (12.04.2009 - 19:53) agrus написал(а):
header должен находиться повыше в коде, он должен отправляться пользователюв первую очередь, даже пустой строчки перед ним не должно быть. Просмотри внимательно код, может именно в этом проблема...

Спустя 9 часов, 14 минут, 48 секунд (13.04.2009 - 05:08) maxsim1982i написал(а):
Понимаете я не могу его расположить выше потому что если все условия true выполняется весь код, а вконце после выполнения переход на другую страницу

вот ввесь код

<?
session_start();
error_reporting(E_ALL);
if (isset($GLOBALS["go"]))
{

//проверка
$adress=$GLOBALS["adress"];
$text=$GLOBALS["text"];

$adress=strtoupper($adress);

if (empty($adress)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели получателя";
header("Location: ../page/sms.php"); exit;}

if (empty($text)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели текст сообщения";
header("Location: ../page/sms.php"); exit;}

//удаление тегов
$adress = htmlspecialchars($adress);
$text = htmlspecialchars($text);

if(file_exists('../data/'.$adress.'/'))
{
mkdir('../data/'.$adress.'/'.$HTTP_SESSION_VARS['nomer'].'/', 0770);
}
else
{
mkdir('../data/'.$adress.'/', 0770);
mkdir('../data/'.$adress.'/'.$HTTP_SESSION_VARS['nomer'].'/', 0770);
}
header ("Locattion: ../page/start.php");}
?>

Спустя 1 час, 20 минут, 14 секунд (13.04.2009 - 06:28) RealMan написал(а):
попробуй в самом начале скрипта добавить
ini_set(output_buffering,"On");

Спустя 4 минуты, 48 секунд (13.04.2009 - 06:33) maxsim1982i написал(а):
каталоги создаються а header не работает. что ещё может быть?

Спустя 6 минут, 2 секунды (13.04.2009 - 06:39) RealMan написал(а):
поробуй указать полный путь
header ("Locattion: ../page/start.php");}

начиная с http://

Спустя 2 минуты, 12 секунд (13.04.2009 - 06:41) kirik написал(а):
Цитата (maxsim1982i @ 12.04.2009 - 22:33)
каталоги создаються а header не работает. что ещё может быть?

а какой именно не срабатывает? Ошибку ту же выдает?

Спустя 3 минуты, 32 секунды (13.04.2009 - 06:45) maxsim1982i написал(а):
еще один вопрос, почему глобальная переменная не определяется форма передает два значеня и в скрипте когда обращаешся к $GLOBALS['namber'] пишет не извесный индекс namber.
register_globals отключена.

Спустя 1 минута, 4 секунды (13.04.2009 - 06:46) maxsim1982i написал(а):
ошибки вобще ни какой не выдает просто белое окно браузера и все и создаються каталоги

Спустя 45 минут, 39 секунд (13.04.2009 - 07:31) kirik написал(а):
Цитата (maxsim1982i @ 12.04.2009 - 22:45)
$GLOBALS['namber']

- это форма передает?

Спустя 31 минута, 19 секунд (13.04.2009 - 08:03) maxsim1982i написал(а):
да передаёт форм <input type=text name=namber> методом POST

Спустя 1 час, 57 минут, 42 секунды (13.04.2009 - 10:00) kirik написал(а):
Тогда namber нужно принимать как $_POST['namber'] (и не namber, а number) smile.gif

Спустя 2 часа, 33 минуты, 18 секунд (13.04.2009 - 12:34) maxsim1982i написал(а):
вот весь код

<?
session_start();
error_reporting(E_ALL);
$HTTP_SESSION_VARS["warrning"] = "";
$_POST['namber'] = strtoupper($_POST['namber']);
if (isset($go))
{


// проверка переменных
$name=$_POST["name"];
$hislo=$_POST["hislo"];
$month=$_POST["month"];
$god=$_POST["god"];
$mail=$_POST["mail"];
$pass=$_POST["pass"];
$namber=$_POST['namber'];
$bot=$GLOBALS["bot"];
if (empty($name)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели имя";
header("Location: ../page/registration.php"); exit;}
if (empty($namber)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели номер вашего авто";
header("Location: ../page/registration.php"); exit;}
if (empty($god)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели дату рождения";
header("Location: ../page/registration.php"); exit;}
if (empty($mail)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели адрес почтового ящика";
header("Location: ../page/registration.php"); exit;}
if (empty($pass)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели пароль";
header("Location: ../page/registration.php"); exit;}
if (empty($bot)) {$HTTP_SESSION_VARS["warrning"] ="вы не ввели код с картинки";
header("Location: ../page/registration.php"); exit;}


//удаление тегов
$name = htmlspecialchars($name);
$mail = htmlspecialchars($mail);
$god = htmlspecialchars($god);
$namber = htmlspecialchars($namber);
$pass = htmlspecialchars($pass);
$bot = htmlspecialchars($bot);



// проверка кода с картинки
if ($HTTP_SESSION_VARS["b"]==1) { if($bot==23680) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}
if ($HTTP_SESSION_VARS["b"]==2) {if($bot==67198) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}
if ($HTTP_SESSION_VARS["b"]==3) {if($bot==99023) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}
if ($HTTP_SESSION_VARS["b"]==4) {if($bot==56789) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}
if ($HTTP_SESSION_VARS["b"]==5) {if($bot==88120) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}
if ($HTTP_SESSION_VARS["b"]==6) {if($bot==64326) $HTTP_SESSION_VARS["warrning"] ="";
else {$HTTP_SESSION_VARS["warrning"] ="неверен код с картинки";
header("Location: ../page/registration.php"); exit;};}







//проверяем существования каталога
$dir = opendir("../data") or die ("error");
chdir("../data");
while($d = readdir($dir))
{
if(is_dir($d))
{
if ($d===$GLOBALS["namber"])
{
if (file_exists("$namber/sys/haser.ilv")) echo "пользователь существует";
else
{mkdir($GLOBALS["namber"]."/sys",0770);
$f=fopen($GLOBALS["namber"]."/sys/haser.ilv","wt")or die ("error1");
$f1=fopen($GLOBALS["namber"]."/sys/name.ilv","wt")or die ("error2");
fputs ($f, $GLOBALS["pass"]);
fputs ($f1, $GLOBALS["name"]."\n");
fputs ($f1, $GLOBALS["god"]."\n");
fputs ($f1, $GLOBALS["gorod"]."\n");
fputs ($f1, $GLOBALS["avto"]."\n");
fputs ($f1, $GLOBALS["hislo"]."\n");
fputs ($f1, $GLOBALS["month"]."\n");
fputs ($f1, $GLOBALS["mail"]."\n");
fclose($f);
fclose($f1);
$HTTP_SESSION_VARS["warrning"] ="Спасибо за регистрацию на указаный Email отправленно письмо с вашими регистрационными данными.";
mail($GLOBALS["mail"],"регистрация в проекте ", "приветствуем Вас ".$GLOBALS["name"]." на проекте Блогадорим за регистрацию по техническим вопросам работы сайта обращайтесь в службу поддержки <br>ваш логин: ".$GLOBALS["namber"]."<br>пароль: ".$GLOBALS["pass"]. "<br> Запомните или сохраните эти данные");
header ("location:../index.php");
}
}
}
}
mkdir($GLOBALS["namber"],0770);
mkdir($GLOBALS["namber"]."/sys",0770);
$f=fopen($GLOBALS["namber"]."/sys/haser.ilv","wt")or die ("error1");
$f1=fopen($GLOBALS["namber"]."/sys/name.ilv","wt")or die ("error2");
fputs ($f, $GLOBALS["pass"]);

fputs ($f1, $GLOBALS["name"]."\n");
fputs ($f1, $GLOBALS["god"]."\n");
fputs ($f1, $GLOBALS["gorod"]."\n");
fputs ($f1, $GLOBALS["avto"]."\n");
fputs ($f1, $GLOBALS["hislo"]."\n");
fputs ($f1, $GLOBALS["month"]."\n");
fputs ($f1, $GLOBALS["mail"]."\n");
fclose($f);
fclose($f1);
$HTTP_SESSION_VARS["warrning"] ="Спасибо за регистрацию на указаный Email отправленно письмо с вашими регистрационными данными.";

mail($GLOBALS["mail"],"регистрация в проекте", "приветствуем Вас ".$GLOBALS["name"]." на проекте Avto-Hit. Блогадорим за регистрацию по техническим вопросам работы сайта обращайтесь в службу поддержки.<br>ваш логин: ".$GLOBALS["namber"]."<br>пароль: ".$GLOBALS["pass"]."<br> Запомните или сохраните эти данные");

header ("location:../index.php");
}

?>

Спустя 9 часов, 54 минуты, 2 секунды (13.04.2009 - 22:28) kirik написал(а):
maxsim1982i, попробуй как посоветовал RealMan..


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.