データベースにファイルを追加するためのシステムを作っています。私はフォームを使用します:
<form action="insert.php" method="post" enctype="multipart/form-data">
Fil: <input type="file" name="file" id="file">
Titel: <input type="text" name="titel" /><br />
Längd (min): <input type="text" name="langd" /><br />
Medverkande: <input type="text" name="medverkande" /><br />
Reporter: <input type="text" name="reporter" /><br />
Fotograf: <input type="text" name="fotograf" /><br />
Sökord: <input type="text" name="sokord" /><br />
<input type="submit" />
</form>
insert.phpのコード:
<?php
$con = mysql_connect("database","user","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("165666-kltvplay", $con);
$filnamn = $_FILES["file"]["name"] ;
$sql="INSERT INTO Blad1 (ProgramID, Titel, Langd, Medverkande, Reporter, Fotograf, Sokord)
VALUES
('$filnamn','$_POST[titel]','$_POST[langd]','$_POST[medverkande]','$_POST[reporter]','$_POST[fotograf]','$_POST[sokord]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "En ny film inlagd: <br> ";
echo $filnamn;
mysql_close($con);
?>
しかし、ファイルを追加すると、ブラウザーに%カウンターがあり、完了するのにかなりの時間がかかるため、ファイル全体がアップロードされているように見えます(ファイルはかなり大きいです)。ファイルの名前をデータベースに挿入したい(そしてそれは機能している)が、ファイル全体をアップロードしたくない。
また、ファイルの拡張子ではなく、名前だけを追加することは可能ですか?