2016-10-19 9 views
0

こんにちは、forループを使用してイメージを更新しようとしています。すべてのレコードで1つの値を更新するだけです。 forループを使用してテーブルイメージを更新する

<?php session_start(); 
require_once("SubmitController/sale_property_controller.php"); 
$objproperty = new sale_property_controller(); 

if (count($_FILES['upload']['name']) > 0) { 
    //Loop through each file 
    for ($i = 0; $i < count($_FILES['upload']['name']); $i++) { 
     //Get the temp file path 
     $tmpFilePath = $_FILES['upload']['tmp_name'][$i]; 
     //Make sure we have a filepath 
     if ($tmpFilePath != "") { 
      //save the filename 
      $shortname = date('d-m-Y-H-i-s') . '-' . $_FILES['upload']['name'][$i]; 
      //save the url and the file 
      $filePath = "../img/saleproperty/" . $shortname; 
      //Upload the file into the temp dir 
      if (move_uploaded_file($tmpFilePath, $filePath)) { 
       $_SESSION['Property_images'][] = $shortname; 
      } 
     } 
    } 
} 
if(!$_SESSION['Property_images']){}else{ 
    foreach ($_SESSION['Property_images'] as $items => &$item) { 
     $property_id=$_GET['id']; 
     $objproperty->Updateproimg($property_id, $item); 
     } 
} 
?> 

この

は、私はあなたがカウントにカウント($ _ FILES [ 'アップロード'])の代わりに$ _FILES [ 'アップロード'] [ '名前' が取る必要があると感じ、私の機能

function Updateproimg($property_id, $item) 
{ 

    $sql="update images_property set images='".$item."' where property_id='".$property_id."' "; 

    $this->update($sql); 
} 
+1

あなたのクエリは、実行するたびにあなたが渡す 'property_id'で全ての' images_property'行を更新するので、ちょっとした目に見えるコードインデントがコードをどのように読むことができるかを見てください。 – RiggsFolly

+0

私はそれらがすべて最後の短い名前 – RiggsFolly

+0

@ RiggsFollyはいで終わると確信しています。あなたは他の解決策で助けてください。 – user3143998

答えて

0

でください。 ];

$count = count($_FILES['upload']) 

for($i=0; $i<=$count; $i++) { 
    $tmpFilePath = $_FILES['upload'][$i]['tmp_name']; 
} 

複数のファイルをアップロードしようとしていますか?

関連する問題