-1
私はいくつかのファイルアップロードPHPコードをコーディングして、複数のファイルをアップロードし、ループで名前を変更し、フォームにデータを送信します。配列からファイル名を引っ張ってデータベースに挿入しようとしています
私は今アップロードされたファイル名を取り出してデータベースに挿入しようとしていますが、フォーム完成時にそれらをエコーするのに苦労しています。
私は新しいファイル名を手に入れて、データベースにデータを手伝ってもらえますか?
ここは私のコードの一部です。
<?php
if(isset($_POST['submit'])){
// Variables for date&Time logs
$dateLog = date("y-m-d"); // DATE OF ADDITION
$timeLog = date("H:i:s", time() - 3600); // TIME OF ADDITION
// INSERT QUERY
$sql="INSERT INTO $table1 (firstname, lastname, companyname, phone, email, name, make, serial, catagory, price, location, description, sold, operational, year, clear, rip, version, service, dock, loading, available, extras, dateadded, featured)
VALUES
('$_POST[firstname]',
'$_POST[lastname]',
'$_POST[companyname]',
'$_POST[phone]',
'$_POST[email]',
'$_POST[name]',
'$_POST[make]',
'$_POST[serial]',
'$_POST[catagory]',
'$_POST[price]',
'$_POST[location]',
'$_POST[description]',
'No',
'$_POST[operational]',
'$_POST[year]',
'$_POST[clear]',
'$_POST[rip]',
'$_POST[version]',
'$_POST[service]',
'$_POST[dock]',
'$_POST[loading]',
'$_POST[available]',
'$_POST[extras]',
'$dateLog',
'No')";
$query = mysql_query($sql) or die("Cannot query the database.<br>" . mysql_error());
// start of image upload
$insert_id = mysql_insert_id() or die("Unable to get insert id for image name.<br>" . mysql_error());
extract($_POST);
$error=array();
$extension=array("jpeg","jpg","png","gif");
foreach($_FILES["files"]["tmp_name"] as $key=>$tmp_name)
{
$file_name=$_FILES["files"]["name"][$key];
$file_tmp=$_FILES["files"]["tmp_name"][$key];
$ext=pathinfo($file_name,PATHINFO_EXTENSION);
if(in_array($ext,$extension))
{
if(!file_exists("../images/listings/".$file_name))
{
$filename=basename($file_name,$ext);
$newFileName=$insert_id."_".mt_rand(1, 99999).".".$ext;
move_uploaded_file($file_tmp=$_FILES["files"]["tmp_name"][$key],"../images/listings/".$newFileName);
}
else
{
$filename=basename($file_name,$ext);
$newFileName=$filename.mt_rand(1, 99999).".".$ext;
move_uploaded_file($file_tmp=$_FILES["files"]["tmp_name"][$key],"../images/listings/".$newFileName);
}
}
else
{
array_push($error,"$file_name, ");
}
}
// end of image upload
//echo '<p>This item was added successfully</p>';
print_r($newFileName);
}
?>
と私のフォームアイテム。
1: Upload : <input type="file" name="files[]"/><br />
2: Upload : <input type="file" name="files[]"/><br />
3: Upload : <input type="file" name="files[]"/><br />
4: Upload : <input type="file" name="files[]"/><br />
乾杯PHP文字列とアレイにおいて
**警告**:これらのパラメータは[適切にエスケープされていない]ため、恐ろしく不安です(http://bobby-tables.com/php)。 '$ _POST'データをクエリに直接入れないでください。巨大な[SQLインジェクションのバグ](http://bobby-tables.com/)が作成されます。 mysql_queryは廃止されたインターフェースなので、使用しないでください。PHPから削除されています。 PDOのような現代的な代替品は学ぶのが難しくありません(http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/)。 [PHP The Right Way](http://www.phptherightway.com/)のようなガイドはベストプラクティスを説明しています。 – tadman
私は現在、廃止されたすべてのコードをPDOに変更しようとしていますが、この場合、コーディングはローカルサーバーに保存され、一般に公開されることはありません。 ;) –
これは放射能コードなので、「うまくいけば」という言葉がここにあります。 – tadman