2014-02-11 95 views
2

我正在使用基於oops的項目在php上傳圖片時,它沒有上傳與我想上傳的圖片信息。在這裏,我連接控制器頁面,我創建了上傳圖像和數據庫信息的對象。圖片上傳使用預先php

代碼的html頁面

<?php 
include('include/control.php'); 
include('include/connect.php'); 
error_reporting(0); 
if(count($_FILES) > 0){ 
    if(is_uploaded_file($_FILES['image']['tmp_name'])){ 
     $i=addslashes(file_get_contents($_FILES['image']['tmp_name'])); 
     $j=getimagesize($_FILES['image']['tmp_name']); 
$objectNew=new add; 
if(isset($_POST['submit'])){ 

$info1=$_POST['info1']; 
$info2=$_POST['info2']; 
$info3=$_POST['info3']; 
$info4=$_POST['info4']; 
$info5=$_POST['info5']; 

$imagetype=$i; 
$imageData=$j; 
    $ob=$objectNew->addInfo($imagetype,$imagedata,$info1,$info2,$info3,$info4,$info5); 
     } 
    } 
} 
?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
</head> 

<body> 
add info<br /> 
<form name="form" enctype="multipart/form-data" action="" method="post"> 
<input type="text" name="info1" /><br /> 
<input type="text" name="info2" /><br /> 
<input type="text" name="info3" /><br /> 
<input type="text" name="info4" /><br /> 
<input type="text" name="info5" /><br /> 
<input type="file" name="image"/><br /> 
<input type="submit" name="submit" /> 
</form> 
</body> 
</html> 

代碼控制器

function addInfo($imagetype,$imagedata,$info1,$info2,$info3,$info4,$info5) 
    { 
     $addI=$this->conn->prepare('insert into `addinfo` (imagetype,image,info1,info2,info3,info4,info5) VALUES (?,?,?,?,?,?,?) '); 
     $addI->bind_param("sbsssss",$imagetype,$imagedata,$info1,$info2,$info3,$info4,$info5) ; 
     $addI->execute(); 
    } 
+0

所以......什麼是 「信息」 你失蹤了? – Tularis

+0

您應該從$ i = addslashes(file_get_contents($ _ FILES ['image'] ['tmp_name']));並將表中的'image'列轉換爲BLOB類型。另外$ imageData = $ i和$ imagetype = $ j; – keepwalking

+0

我認爲你還需要使用http://de1.php.net/move_uploaded_file上傳文件夾中的文件 –

回答

0

這僅僅是一個建議。 您可以將「必需」屬性添加到您的輸入中,以便它在空時不會被提交。 這適用於最新的瀏覽器

代碼

<input type="text" name="info1" /><br /> 
<input type="text" name="info2" /><br /> 

可以

<input type="text" name="info1" required /><br /> 
<input type="text" name="info2" required /><br />