0
  1. 空のファイルをデータベースに保存できるようにしたいと考えています。
  2. ファイルサイズを1MBに制限したい。

ファイルの有無にかかわらずアップロードしようとしていますが、最初のファイルif($_FILES['word']['size'] = (0000000))は実行されません。代わりに、ELSE ステートメントを実行しif($_FILES['word']['size'] < (1024000))ます。

<?php
error_reporting(E_ALL ^ E_NOTICE);
mysql_connect("localhost", "root", "") or die (mysql_error());
mysql_select_db("calendario") or die (mysql_error());


#Add Files in Database#
session_start();
if(isset($_POST['btnadd'])){
$title =$_POST['txttitle'];
$detail =$_POST['txtdetail'];

$month=$_POST['month'];
$day =$_POST['day'];
$year =$_POST['year'];
$eventdate = $month."/".$day."/".$year;

$emonth=$_POST['Emonth'];
$eday =$_POST['Eday'];
$eyear =$_POST['Eyear'];
$expire = $emonth."/".$eday."/".$eyear;

$code = $_SESSION['code'];

$id = $_SESSION["username"];

##############################################################################################Image

    $word =$_FILES['word']['tmp_name'];
    $word_name = addslashes($_FILES['word']['name']);
    $word_size = addslashes($_FILES['word']['size']);
    $word_type = $_FILES['word']['type'];



if($_FILES['word']['size'] = (0000000)) //if files uploaded empty, still enter database
{
   echo("<script language=\"JavaScript\" type=\"text/JavaScript\">\n");
    echo("alert('File Error 0.');\n");
    echo("window.location = ('calender.php');\n");
    echo("</script>\n");
}
else
{
    if($_FILES['word']['size'] < (1024000)) //if files is less than 1mb
    {
    echo("<script language=\"JavaScript\" type=\"text/JavaScript\">\n");
    echo("alert('File Error.');\n");
    echo("window.location = ('calender.php');\n");
    echo("</script>\n");
    }

    else{
    $word = addslashes(file_get_contents($_FILES['word']['tmp_name']));
    $word_name = addslashes($_FILES['word']['name']);
    $word_size = addslashes($_FILES['word']['size']);
    $fp      = fopen($word, 'r');
    $content = fread($fp, filesize($word));
    $content = addslashes($content);
    fclose($fp);


  if(!get_magic_quotes_gpc())
{
    $word_name = addslashes($word_name);
}

    }


############################################################################################Insert
$sqlinsert = "INSERT into eventcalendar(classCode,Title,Detail,eventDate,dateAdded,Image,WordPpt,WordPptName,WordPptSize,WordPptType,Username,Edate) values ('".$code."','".$title."','".$detail."','".$eventdate."',now(),'".$image."','".$content."','".$word_name."','".$word_size."','".$word_type."','".$id."','".$expire."')";
$resultinginsert = mysql_query($sqlinsert);
}
if($resultinginsert){
echo("<script language=\"JavaScript\" type=\"text/JavaScript\">\n");
echo("alert('Done.');\n");
echo("window.location = ('calender.php');\n");
echo("</script>\n");
}else{
echo "(Event Failed to be Added....)";    

}
}
else
{
    echo "error";
}

?>
4

1 に答える 1

0

空のファイルまたはファイルがないということですか?

ファイルはあるがサイズが 0 の場合: (二重等号)

if($_FILES['word']['size'] == 0)

アップロードされたファイルがない場合は、次のように記述できます。

if(!isset($_FILES['word']))

ノート:

1MB = 1 バイト * 1024 * 1024 = 1048576

于 2013-03-14T23:57:17.450 に答える