2012-03-30 59 views
0

我已經喜歡Get方法獲取POST方法不能提供的字段值? (PHP)

<form name="imgbnk" action="imgbnk.php" method="POST" enctype="multipart/form-data" onsubmit="return validateForm()"> 
select the image <input type="file" name="imgloc"> 

POST方法的形式,其中在imgbnk.php我檢索它們作爲$filename=$_POST["imgloc"];

問題

  1. 當我使用POST方法,$filename不從表格imgbnk得到任何值,如果我使用GET方法,$filename正在返回文件名稱,我想知道爲什麼POST不能檢索相同的。
  2. $size=getimagesize($filename);出現如
    Warning: getimagesize(Hydrangeas.jpg) [function.getimagesize]: failed to open stream: No such file or directory in C:\wamp\www\imgbnk\imgbnk.php的警告,當使用GET方法時。
  3. 如果我用POST它的意思是Warning: getimagesize() [function.getimagesize]: Filename cannot be empty

請幫我理解爲什麼發生這種情況,任務是獲取圖像的完整屬性並將其存儲在本地。

在此先感謝:)

+4

文件通過'$ _FILES' – hjpotter92 2012-03-30 06:32:52

+0

您是否嘗試過使用$ _FILES? – SuperRod 2012-03-30 06:33:35

+0

我嘗試使用'$ _FILES',其中每個表單字段都會拋出'Notice:Undefined index'以及'Warning:getimagesize()期望參數1爲字符串,array給出' – krishna 2012-03-30 06:37:15

回答

0

我建議你做這樣

對於檢索圖像屬性使用

$name=$_FILES['imgloc']['name']; 
$size=$_FILES['imgloc']['size']; 
$type=$_FILES['imgloc']['type']; 
$tmp_path=$_FILES['imgloc']['tmp_name']; 
$error=$_FILES['imgloc']['error']; 

和用於檢索其他表單域的詳細信息使用

$title=$_POST['title']; 
$description=$_POST['desc']; 
$keywords=$_POST['keywords']; 
$catagiri=$_POST['catagiri']; 
0

代替$ _ POST你可以使用$_FILES .Will獲取文件的所有屬性。 $ _ POST不能使用這個文件上傳

0

您可以在$_FILES['imgloc']['name']獲取文件名...

+0

感謝這個作品,但我有其他領域像'$ title = $ _ FILES [「title」];' 這些它的投擲'注意:未定義的索引:標題' – krishna 2012-03-30 06:42:09

+0

但你爲什麼使用「標題」? print_r($ _ FILES)以獲得更好的理解。 – 2012-03-30 06:43:11

+0

我想訪問那些提交的值,而不是僅僅打印它們 – krishna 2012-03-30 06:46:24