Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Сново php... (https://forum.antichat.xyz/showthread.php?t=36680)

SJet 29.03.2007 19:43

Сново php...
 
Вот пишу скрипт для загрузки фотографий на сервер. Получился вот такой код:
PHP код:

if ($act == add)
{
echo 
'<form method="post" enctype="multipart/form-data" action="foto.php?act=addfoto">
<input type=hidden name=action value=add>
<table border=0 width=267 >
<tr><td><input type=hidden name="MAX_FILE_SIZE" value="163840"></td></tr>
<tr><td align=center><font face=verdana size=2>Фотография:</font></td><td><input type=file name=photo size=14></td></tr>
<tr><td colspan=2 align=right><input type=submit value="Добавить фотографию"></td></tr>
</form>'
;
}
if (
$act == addfoto)
{
$photo $_FILES['photo']['tmp_name'];

$photo_name $_FILES['photo']['name'];

$photo_size $_FILES['photo']['size'];

$photo_type $_FILES['photo']['type'];

$photo_error $_FILES['file']['error'];

if (
$photo_error >0)
{
echo 
'Проблема: ';
switch (
$photo_error)
{
case 
1: echo 'Файл слишком большой!'; break;
case 
2: echo 'Файл слишком большой!'; break;
case 
3: echo 'Файл загружен частично!'; break;
case 
4: echo 'Файл не загружен'; break;
}
exit;
}
$upfile 'fotos/'.$photo_name;
if (
is_uploaded_file($photo))
{
 if (!
move_uploaded_file($photo$upfile))
 {
 echo 
'Файл не может быть перемещён!';
 exit;
 }

}
echo 
'Ваша фотография успешно загружена';


Только вот в результате выполнения не выходит никаких ошибок, но и файл не появляется в заданом каталоге. Помогите разобратся!

DIAgen 29.03.2007 19:49

Вместо
PHP код:

if ($act == addfoto

используй
PHP код:

if ($_GET['act ']==='addfoto'

и еще зачем ты используешь exit; построй нормально алгоритм...)

fucker"ok 29.03.2007 19:53

может банальное register_globals?
Код:

if ($act == add)
Что такое add? константа? :)

SJet 29.03.2007 20:03

add - форма для заливки картинки. foto.php?act=ADD

SJet 29.03.2007 20:05

Я тут скачал готовую фотогалерею, и она работает(значит проблема не из-за серва), но я не могу разобратся в коде.

Isis 30.03.2007 00:29

PHP код:

<?php
if ($_GET['act'] == 'add') {
echo 
'<form method="post" enctype="multipart/form-data" action="foto.php?act=addfoto">
<input type="hidden" name="action" value="add">
<table border=0 width=267 >
<tr><td><input type=hidden name="MAX_FILE_SIZE" value="163840"></td></tr>
<tr><td align=center><font face=verdana size=2>Фотография:</font></td><td><input type=file name="photo" size=14></td></tr>
<tr><td colspan=2 align=right><input type=submit value="Добавить фотографию"></td></tr>
</form>'
;
}
if (
$_GET['act'] == 'addfoto') {
$photo $_FILES['photo']['tmp_name'];
$photo_name $_FILES['photo']['name'];
$photo_size $_FILES['photo']['size'];
$photo_type $_FILES['photo']['type'];
$photo_error $_FILES['file']['error'];
if (
$photo_error 0) {
echo 
'Проблема: ';
switch (
$photo_error) {
case 
1:
    echo 
'Файл слишком большой!';
break;
case 
2:
    echo 
'Файл слишком большой!';
break;
case 
3:
    echo 
'Файл загружен частично!';
break;
case 
4:
    echo 
'Файл не загружен';
break;
}
exit;
}
$upfile 'fotos/'.$photo_name;
if (
is_uploaded_file($photo)) {
 if (!
move_uploaded_file($photo$upfile)) {
 echo 
'Файл не может быть перемещён!';
 exit;
 }
}
echo 
'Ваша фотография успешно загружена';
}

А еще проверь права на папку fotos =)

nerezus 30.03.2007 07:26

еще забал проверить наличие $_GET['act'] и др., используй isset()

AdvLamer 03.04.2007 13:31

Никто картинки в Ldap не закачивал?
А то пока непонятно как сделать...


Время: 06:56