2014-12-16 2 views
0

У меня есть форма в HTML (+ самозагрузка), соответствующие части здесь:Issue вставка файла в MySQL

<div class="form-group"> 
    <label for="inputPic">Item Image</label> 
    <input type="file" name="inputPic"> 
    <p class="help-block">Upload a picture</p> 
</div> 

пресса пользователя покориться и вносятся в другой файл PHP, который проверяет расширение файлов:

if (!empty($_FILES['inputPic']['tmp_name'])) 
{ 
    if ($_FILES['inputPic']['type'] == "image/jpeg" || $_FILES['inputPic']['type'] == "image/jpg" || $_FILES['inputPic']['type'] == "image/png") 
    { 
     if ($content = file_get_contents($_FILES['inputPic']['tmp_name'])) 
     { 
      $image = addslashes($content); 
     } 
    } 
} 

И, наконец, попытки вставить в SQL:

if (isset($image)) 
{ 
    if ($stmt = $mysqli->prepare("INSERT INTO posted_items (seller, post_date, expiration, image, description, name, category, startBid, buyNowPrice, minPrice, sold) VALUES (?, NOW(), ?, ?, ?, ?, ?, ?, ?, ?, 0)")) 
    { 
     $stmt->bind_param("issssiddd", $userid, $endDateAndTime, $image, $description, $itemName, $itemCategory, $startBid, $buyNow, $reservation); 
     $stmt->execute(); 
     $stmt->close(); 
    } 
} 

вставка SQL правильно работает, как я вижу это в моем г atabase, но изображение (типа largeblob) вообще не появляется для меня. В базе данных есть куча случайных данных в базе данных, но когда я звоню

echo '< img class="img-responsive centered" src="data:image/jpeg;base64,'.base64_encode($row['image']).'"></img>'; 

Я ничего не вижу. Где я иду не так?

Спасибо!

+1

ЛЮБЫЕ ОШИБКИ/ИСКЛЮЧИТЕЛЬНОЕ СООБЩЕНИЕ? –

+0

Можете ли вы добавить ошибку, которую вы получаете – Hitesh

+0

Нет ошибок, просто не отображается изображение – Stephen

ответ

0

Вы должны загрузить изображение в какой-либо каталог на своем сервере и сохранить путь в своей базе данных.

Смежные вопросы