2012-08-31 97 views
0

所以我有這個問題,我的錯誤沒有顯示出來,當我測試,看他們是否顯示時,他們應該。當我選擇一個文件時,我的腳本只能接受圖像文件以及任何大於2MB的內容。我沒有寫實際將圖像上傳到數據庫和我創建的相冊的部分,但無論如何,我都應該得到某種錯誤,而不是僅僅傳遞任何東西。我需要幫助!提前致謝!圖片上傳錯誤

這裏是處理圖像,並最終將上傳的文件:

<?php 
include 'init.php'; 

if(!logged_in()){ 
header('Location: index.php'); 
exit(); 
} 

include 'template/header.php'; 
?> 

<h3>Upload Image</h3> 

<?php 

if(isset($FILES['image'], $_POST['album_id'])){ 
$image_name = $_FILES['image']['name']; 
$image_size = $_FILES['image']['size']; 
$image_temp = $_FILES['image']['tmp_name']; 

$allowed_ext = array('jpg', 'jpeg', 'png', 'gif'); 
$image_ext = strtolower(end(explode('.', $image_name))); 

$album_id = $_POST['album_id']; 

$errors = array(); 

if (empty($image_name) || empty($album_id)){ 
    $errors[] = 'Something is missing'; 
} else { 

    if(in_array($image_ext, $allowed_ext) === false){ 
     $errors[] = 'File type not allowed'; 
    } 

    if($image_size > 2097152){ 
     $errors[] = 'Maximum file size is 2MB'; 
    } 

    if(album_check($album_id) === false){ 
     $errors[] = 'Couldn\'t upload to that album'; 
    } 

} 

if(!empty($errors)){ 
    foreach ($errors as $error){ 
     echo $error, '<br />'; 
    } 
} else { 
    // upload image 
} 
} 

$albums = get_albums(); 

if(empty($albums)){ 
echo '<p>You don\'t have any albums. <a href="create_album.php">Create an album</a></p>'; 
} else { 
?> 

<form action="" method="post" enctype="multipart/form-data"> 
<p>Choose a file:<br /><input type="file" name="image" /></p> 
<p> 
Choose an album:<br /> 
<select name="album_id"> 
    <?php 
    foreach ($albums as $album){ 
     echo '<option value="', $album['id'], '">', $album['name'], '</option>'; 
    } 
    ?> 
</select> 
</p> 
<p><input type="submit" value="Upload" /></p> 
</form> 

<?php 
} 

include 'template/footer.php'; 
?> 

我想我的問題是在我的錯誤,但我不能肯定,再次任何幫助表示讚賞!謝謝! -TechGuy24

+0

是否設置表單標籤的加密類型屬性ENCTYPE = 「的multipart/form-data的」? –

+0

@SandeepTawaniya你可以在他的例子 – AlienWebguy

+0

ohh中清楚地看到..對不起!我沒有看到:) –

回答

1

變化if(isset($FILES['image'], $_POST['album_id'])){

if(isset($_FILES['image'], $_POST['album_id'])){

+0

修復它!哇,我不能相信我錯過了..謝謝AlienWebguy! – WebDeVGuy24

+1

很高興能幫到:) – AlienWebguy

+2

哇,我不得不盯着答案五分鐘才發現有一個下劃線缺失!是時候去睡覺了... – raidenace