PHP форма не загружает файл - PullRequest
1 голос
/ 24 августа 2010

У меня есть форма PHP, которая вставляет информацию в базу данных. Все работает, кроме загрузки файла. Имя файла должно быть помещено в столбец «image» в таблице базы данных, и файл также должен быть помещен в каталог. Самое смешное, что этот загрузчик работал вчера. : -S

Пожалуйста, кто-нибудь может просто просмотреть мой PHP-код и посмотреть, что-то мне не хватает ?? Большое спасибо !!

ФОРМАТ КОД:

<form name="upload_announcement" method="post" action="PostAnnouncement.php">
Title: (limit 35 characters)<br />
<input type="text" name="title" maxlength="32" style="width:200px;" /><br /><br />
Message: (limit 500 html characters)<br />
<textarea name="message" cols="60" rows="20"></textarea><br /><br />
Upload Image: (Specs: .jpg format, 255px X 255px, and less than 500kb in size.)<br />
<input type="file" name="image" id="image" style="color:#fff;" />
<br /><br />
Start Date:<br />
<input name="dateStart" type="text" id="dateStartImg" />
<br /><br />
End Date:<br />
<input name="dateEnd" type="text" id="dateEndImg" />
<br /><br />
<input type="hidden" name="customerId" value="<?php echo $_COOKIE['customerId']; ?>" />
<input type="submit" name="upload" value="Upload Announcement" />
</form>`

SUBMIT CODE:<br />
`include('ConfigRead.php');

$customerId = $_COOKIE['customerId'];
$select = mysql_query('select filingName from user where customerId = '.$customerId.' limit 1') or die('Error: ' . mysql_error());
$selectRow = mysql_fetch_array( $select );
$filingName = $selectRow['filingName'];
$imageFileName = $_FILES['image']['name'];

if((($_FILES["image"]["type"] == "image/gif")
|| ($_FILES["image"]["type"] == "image/jpeg")
|| ($_FILES["image"]["type"] == "image/pjpeg"))
&& ($_FILES["image"]["size"] < 500000))
{
  if($_FILES["image"]["error"] > 0){
    header("location:Announcements.php?file=error");
  }else{
    move_uploaded_file($_FILES["image"]["tmp_name"],
    "../Admin/CustomerFiles/Announcements/" . $filingName . "/" . $imageFileName);
  }
}else{
  header("location:Announcements.php?file=error");
}

$sql="INSERT INTO announcements (customerId, filingName, title, message, image, dateStart, dateEnd) VALUES ('$_POST[customerId]','$filingName','$_POST[title]','$_POST[message]','$imageFileName','$_POST[dateStart]','$_POST[dateEnd]')";

if (!mysql_query($sql,$connRead))
  {
  die('Error: ' . mysql_error());
  }

include('CloseConnRead.php');

header("location:ManageAnnouncements.php?add=success");`

Ответы [ 2 ]

8 голосов
/ 24 августа 2010

При добавлении файлов

<form name="upload_announcement" method="post" enctype="multipart/form-data" action="PostAnnouncement.php">
добавьте в форму multipart / form-data enctype .
0 голосов
/ 24 августа 2010

Включен ли file_uploads в вашем php.ini (или используется ini_set)?Размер файла больше, чем параметр конфигурации upload_max_filesize в php.ini?

Также посмотрите на другие:

  • max_input_time
  • memory_limit
  • max_execution_time
  • post_max_size
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...