我成功地能夠插入一個圖像和視頻文件到我的mysql數據庫,但它正在創建2條記錄。我的信念是因爲我的「類型」字段,它無法爲同一條記錄創建2個不同的值,所以我創建了「Type」和「Type2」來解決問題。它創建了相同的「Image/png」值。 這裏是我的形式腳本:PHP插入圖像和視頻到一個mysql記錄
<form action="saveimage.php" enctype="multipart/form-data" method="post">
<table style="border-collapse: collapse; font: 12px Tahoma;" border="1" cellspacing="5" cellpadding="5">
<tbody>
<tr><td>Picture:</td><td><input name="rpic" type="file" accept="image/*"></td></tr>
<tr><td>Video:</td><td><input name="rvideo" type="file" accept="video/*"></td></tr>
<tr><td><input name="Upload Now" type="submit" value="Upload"></td></tr>
</tbody></table>
</form>
這是腳本插入的文件:
<?php
include("config.php");
error_reporting(E_ERROR | E_PARSE);
function GetImageExtension($rpic)
{
if(empty($rpic)) return false;
switch($rpic)
{
case 'image/bmp': return '.bmp';
case 'image/gif': return '.gif';
case 'image/jpeg': return '.jpg';
case 'image/png': return '.png';
default: return false;
}
}
function GetVideoExtension($rvideo)
{
if(empty($rvideo)) return false;
switch($rvideo)
{
case 'video/asf': return '.asf';
case 'video/avi': return '.avi';
case 'video/wmv': return '.wmv';
default: return false;
}
}
if (!empty($_FILES["rpic"]["name"]))
{
$file_name=$_FILES["rpic"]["name"];
$temp_name=$_FILES["rpic"]["tmp_name"];
$type=$_FILES["rpic"]["type"];
$ext= GetImageExtension($type);
$name=$_FILES["rpic"]["name"];
$path = "uploads/".$name;
if(move_uploaded_file($temp_name, $path))
{
$query_upload="INSERT into recipes (type, rpic, path, posted) VALUES ('".$type."','".$rpic."','".$path."','".date("Y-m-d")."')";
mysql_query($query_upload) or die("Error in $query_upload == ----->".mysql_error());
} else {
exit("Error while uploading your file.");
}
}
if (!empty($_FILES["rvideo"]["name"]))
{
$file_name=$_FILES["rvideo"]["name"];
$temp_name=$_FILES["rvideo"]["tmp_name"];
$type=$_FILES["rvideo"]["type"];
$ext= GetVideoExtension($type2);
$name=$_FILES["rvideo"]["name"];
$path = "uploads/".$name;
$pathvideo = "uploads/".$name;
if(move_uploaded_file($temp_name, $pathvideo))
{
$query_upload="INSERT into recipes (type, rvideo, pathvideo, posted) VALUES ('".$type."','".$rvideo."','".$pathvideo."','".date("Y-m-d")."')";
mysql_query($query_upload) or die("Error in $query_upload == ----->".mysql_error());
} else {
exit("Error while uploading your file.");
}
}
?>
任何幫助,任何人都可以提供將不勝感激。再次,我寧願只創建一條記錄。 在此先感謝!
我使用了您提供的代碼,但仍然只輸入了一個「Type」,它是rvideo類型和路徑。路徑字段沒有插入記錄。不過,感謝您的幫助。 – wilcan 2014-10-17 12:48:23
更新:將rvideo編碼中的「類型」更改爲「Type2」後,視頻和圖像MIME類型已插入到表格中。現在,只有名稱(rpic和rvideo)需要修復;他們都顯示了rvideo的價值。 – wilcan 2014-10-17 12:53:52
好得多..相同 在照片中,$ name = $ _ FILES [「rvideo」] [「name」]; 在視頻中,$ name = $ _ FILES [「rvideo」] [「name」]; 請改變這一點,因爲你爲類型..它會工作。 乾杯! – 2014-10-17 13:31:08