1

ファイル アップロード システムを自分の Web サイトに追加しようとしていますが、生成されたファイル名と一致するファイル リンクを取得できないようです。ファイル名の前に時間関数を追加して、一意にします (時間に基づいて数値を生成します)。これは行いますが、何らかの理由で、その一意の名前がデータベースに保存されません。誰かがこれを理解するのを手伝ってくれますか?

//This is the directory where images will be saved 
 $target = "files/"; 
 $target = $target. time(). basename( $_FILES['photo']['name']); 
 echo $target;


//postThis gets all the other information from the form 
 $tfid=$_POST['tfid']; 
 $fname=$_POST['fname']; 
 $lname=$_POST['lname']; 
 $hca=$_POST['hca'];
 $file=($_FILES['photo']['name']);


//Writes the information to the pic table 
 mysql_query("INSERT INTO pic
(tfid, file) 
VALUES ('$tfid', '$file')")
or die(mysql_error());
ECHO "<strong>pic table has been saved.<br></strong>";


//Writes the photo to the server 
if(move_uploaded_file($_FILES['photo']['tmp_name'], $target)) 
{ 

//Tells you if its all ok 
echo "<strong>The file has been uploaded</strong>"; 
 } 
else { 

  //Gives an error if its not 
 echo "<strong>Sorry, there was a problem uploading your file.</strong>"; 
 } 
 echo '<br>';
require 'insertbuttons.php';
4

1 に答える 1

0

今何が起こっていたかがわかります。コメント失礼します。$target変数をデータベースに保存する必要があります。投稿された変数はターゲットと一致しません。そのため、SQL ステートメントに含まれている場所では、おそらく代わりに$file必要になるでしょう。$targetこれでファイルの名前がわかるはずですが、拡張子がないと次のようになります。

于 2013-04-22T21:14:47.140 に答える