2012-03-17 12 views
1

以下に、複数の画像をフォルダにアップロードするコードとmysqlへのパスを含めました。私はまったく新しいので、このような愚かな質問のために私を許してください。しかし、私はこのタイムスタンプまたは$ fileName値をmysqlに送ることから始めなければいけません。PHPでmysqlにタイムスタンプの付いた画像名を送る方法

<?php 
require_once('storescripts/connect.php'); 
mysql_select_db($database_phpimage,$phpimage); 
$uploadDir = 'upload/'; 

if(isset($_POST['upload'])) 
{ 


foreach ($_FILES as $file) 
{ 

    $fileName = $file['name']; 
    $tmpName = $file['tmp_name']; 
    $fileSize = $file['size']; 
    $fileType = $file['type']; 

    if ($fileName != ""){ 
     $filePath = $uploadDir; 
     $fileName = str_replace(" ", "_", $fileName); 

     //Split the name into the base name and extension 
     $pathInfo = pathinfo($fileName); 
     $fileName_base = $pathInfo['fileName']; 
     $fileName_ext = $pathInfo['extension']; 

     //now we re-assemble the file name, sticking the output of uniqid into it 
     //and keep doing this in a loop until we generate a name that 
     //does not already exist (most likely we will get that first try) 
     do { 
      $fileName = $fileName_base . uniqid() . '.' . $fileName_ext; 
     } while (file_exists($filePath.$fileName)); 

     $result = move_uploaded_file($tmpName, $filePath.$fileName); 
    } 


if(!get_magic_quotes_gpc()) 
{ 
$fileName = addslashes($fileName); 
$filePath = addslashes($filePath); 
} 
$fileinsert[]=$filePath; 
} 
    $cat=$_POST['cat'];//this is the category the product is stored in 
    $about=$_POST['about'];//this is some general information about the item 
    $price=$_POST['price'];//the price of the item 
    $item=$_POST['item'];//the name of the item 
    $name1=basename($_FILES['image01'][$fileName]);//the file name of the first actual jpg 
    $name2=basename($_FILES['image02'][$fileName]);//the file name of the sencond actual jpg 
    $name3=basename($_FILES['image03'][$fileName]);//the file name of the third actual jpg 
    $name4=basename($_FILES['image04'][$fileName]);//the file name of the fourth actual jpg 

$query = "INSERT INTO image (mid, cid, about, price, item, name1, name2, name3, name4) ". 
"VALUES ('','$cat','$about','$price','$item','$name1','$name2','$name3','$name4')"; 

mysql_query($query) or die('Error, query failed : ' . mysql_error()); } 


?> 

答えて

0

私が正しくあなたの質問を理解していれば、あなたが変更する必要があります:

$fileinsert[]=$filePath; 

をする:

$fileinsert = array(); // initialize the variable before the loop 

... 
$fileinsert[]=$filePath.$fileName; // or just $fileName if you don't need the path in the DB 

、その後、あなたが変更する必要があります:へ

$name1=basename($_FILES['image01'][$fileName]);//the file name of the first actual jpg 
$name2=basename($_FILES['image02'][$fileName]);//the file name of the sencond actual jpg 
$name3=basename($_FILES['image03'][$fileName]);//the file name of the third actual jpg 
$name4=basename($_FILES['image04'][$fileName]);//the file name of the fourth actual jpg 

$name1=$fileinsert[0]; 
$name2=$fileinsert[1]; 
$name3=$fileinsert[2]; 
$name4=$fileinsert[3]; 

何かそんなことをする必要があります。

+0

あなたは本当に素晴らしいです、ありがとう – userX

+0

@ user1275180よろしくお願いします。それがあなたのために働くなら、答えを受け入れたものとしてマークしてください。喜んで – jeroen

+0

。星をクリックしているのですか? – userX

関連する問題