Форум программистов CODEBY.NET Хостинг в Беларуси — Active Technologies

Разработка бизнес сайтов

Нужны клиенты? Тогда сюда быстрее...
X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )




> Написал скрипт, он не работает. Помогите починить.
Gamlet
Вставить ник
сообщение 20:01:2008, 07:19
Цитата Ответить 


Продвинутый
**

Группа: Модеры
Сообщений: 219
Регистрация: 8:01:2007
Пользователь №: 8 716
Специализация: Веб дизайнер



Репутация: - 2 +


Только начал изучать пхп, написал скрипт регистрации для одного своего сайта.
Кинул на хостинг скрипт для проверки, он показал наличие уймы ошибок. Начал исправлять, но хостинг откликается ошибкой даже на простейшие скрипты.
Помогите исправить ошибки в скрипте:

Код
<?php
$mkakk=$_Post['login'];
$mkpass=$_Post['password'];
if (file_exists($mkakk))
{
echo "Такой аккаунт есть";
}

else
{
$mkname=$_Post['name'];
$mksite=$_Post['site'];
$mkpost=$_Post['post'];

mkdir($mkakk);

$copypass=$mkakk."/pass.pl";
$copyname=$mkakk."/name.pl";
$copysite=$mkakk."/site.pl";
$copypost=$mkakk."/post.pl";
$copymoney=$mkakk."/money.pl";

$filename=fopen ($copyname, w);
$filepass=fopen ($copypass, w);
$filesite=fopen ($copysite, w);
$filepost=fopen ($copypost, w);
$filemoney=fopen ($copymoney, w);

fwrite($filename, $mkname);
fwrite($filepass, $mkpass);
fwrite($filesite, $mksite);
fwrite($filepost, $mkpost);
fwrite($filemoney, "0");

$filegnomer=fopen ("gsites/nomer.pl", "r+");
$gnomer=fread($filegnomer, 100);
$gnomer=$gnomer+1;
fwrite("gsites/nomer.pl", $gnomer);


$copynomer=$mkakk."/nomer.pl";
$filenomer=fopen ($copynomer, w);
fwrite($filenomer, $gnomer);


$gsite="gsites/".$gnomer.".pls";
//$copynomer=$mkakk."/nomer.pl";
$filegsite=fopen ($gsite, w);
fwrite($filegsite, $mksite);

$gbalans="gsites/".$gnomer.".plb";
//$copynomer=$mkakk."/nomer.pl";
$filegbalans=fopen ($gbalans, w);
fwrite($filegbalans, "0");

$glogin="gsites/".$gnomer.".pll";
//$copynomer=$mkakk."/nomer.pl";
$fileglogin=fopen ($glogin, w);
fwrite($fileglogin, $mkakk);

echo "Аккаунт создан";

}
?>

Очень надо.
Подняться вверх 
 
Сообщение #1
 
Новая тема 
Ответов (1 - 4)
MajestiC
Вставить ник
сообщение 20:01:2008, 14:18
Цитата Ответить 


Продвинутый
**

Группа: Модеры
Сообщений: 189
Регистрация: 18:02:2005
Из: Minsk, Belarus
Пользователь №: 1 373
Специализация: PHP, JS, AJAX, SQL, MySQL



Репутация: - 10 +


Сам скрипт ужасен с точки зрения безопасности... Через POST тебе можно передать всё что угодно, а твой скрипт из этих данных создает директории и т.д....

А ошибки скорее всего у тебя из-за не правильных прав на директории в которых ты пытаешься создать файлы или скопировать туда файлы.

Покопай chmod
Подняться вверх 
 
Сообщение #2
Vadik(R)
Вставить ник
сообщение 20:01:2008, 14:26
Цитата Ответить 


Продвинутый
**

Группа: Программист
Сообщений: 122
Регистрация: 12:12:2007
Из: Волгоград
Пользователь №: 14 203
Специализация: Программист, знаю HTML, JS, CSS, Паскаль.



Репутация: - 2 +


Я конечно в php не разбираюсь, но мой совет тебе - отрабатывать твой скрипт по шагам. То есть проверить поначалу
Код
<?php
$mkakk=$_Post['login'];
$mkpass=$_Post['password'];
if (file_exists($mkakk))
{
echo "Такой аккаунт есть";
}
?>
. Если работает, то проверить
Код
<?php
$mkakk=$_Post['login'];
$mkpass=$_Post['password'];
if (file_exists($mkakk))
{
echo "Такой аккаунт есть";
}

else
{
$mkname=$_Post['name'];
$mksite=$_Post['site'];
$mkpost=$_Post['post'];
echo "Скрипт пока работает наормально";
}
?>
Не смотря даже не то, что результат может и не изменится, мне кажеться всё равно так ты быстрее найдёшь свою ошибку. Такая "стратегия" отладки мне сегодня очень помогла в Делфи.

Сообщение отредактировал Vadik(R) - 20:01:2008, 14:28
Подняться вверх 
 
Сообщение #3
Ромко
Вставить ник
сообщение 23:03:2008, 21:06
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 9
Регистрация: 23:03:2008
Из: СПб. Сеть ЦИФРА :)
Пользователь №: 16 109
Специализация: PHP, MySQL, HTML



Репутация: - 0 +


Безопастность хромает....
Подняться вверх 
 
Сообщение #4
olegSM
Вставить ник
сообщение 29:04:2008, 12:53
Цитата Ответить 


Новенький
*

Группа: Программист
Сообщений: 2
Регистрация: 29:04:2008
Пользователь №: 16 960
Специализация: Программист



Репутация: - 0 +



Да с безопасностью есть проблемка!
Нет проверки передаваемых параметров через метод POST !!!!!!!!
Не помешало бы использование СУБД(MySQL) с файлами много мороки да и не безопасно!
Будущее за СУБД. - во всем должен быть порядок!




--------------
smok on-line
Подняться вверх 
 
Сообщение #5


Быстрый ответ  Ответить  Новая тема 

> Быстрый ответ
Полужирный
Курсив
Подчеркнутый
Вставить изображение
Смайлики
Цитата
Код
 
 Отправлять уведомления об ответах на e-mail |  Включить смайлики |  Добавить подпись
   

 

RSS Текстовая версия Сейчас: 17:05:2008 - 08:57
с нами можно связаться по:
телефону: +375-(29)-632-60-67
e-mail:info@codeby.net