<?php
error_reporting(~E_NOTICE);
require_once 'dbconfig.php';
if($_POST)
{
$firstname = $_POST['firstname'];
$lastname = $_POST['lastname'];
$description = $_POST['description'];
$election_name=$_POST['election_name'];
$category_name=$_POST['category_name'];
$imgFile = $_FILES['user_image']['name'];
$tmp_dir = $_FILES['user_image']['tmp_name'];
echo $imgSize = $_FILES['user_image']['size'];
$upload_dir = 'user_images'; // upload directory
$imgExt = strtolower(pathinfo($imgFile,PATHINFO_EXTENSION)); // get image extension
// valid image extensions
$valid_extensions = array('jpg', 'jpeg', 'png', 'gif'); // valid extensions
// rename uploading image
$photo = rand(1000,1000000).".".$imgExt;
// allow valid image file formats
if(in_array($valid_extensions,$imgExt)) {
// Check file size '5MB'
if($imgSize > 5000000) {
move_uploaded_file($tmp_dir,"$upload_dir/$imgFile");
try {
$stmt = $db_con->prepare("INSERT INTO candidate(firstname,lastname,description,election_name,category_name,photo) VALUES(:ename, :edept, :esalary, :elect, :cat, :ima)");
$stmt->bindParam(":ename", $firstname);
$stmt->bindParam(":edept", $lastname);
$stmt->bindParam(":esalary", $description);
$stmt->bindParam(":elect", $election_name);
$stmt->bindParam(":cat", $category_name);
$stmt->bindParam(":ima", $photo);
if($stmt->execute())
{
echo "Successfully Added";
}
else{
echo "Query Problem";
}
}
catch(PDOException $e){
echo $e->getMessage();
}
}
else{
echo "Sorry, your file is too large.";
}
}
else {
echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
}
?>
我有这样的代码上传图像和文本文件,但它说对不起,只有JPG,JPEG,PNG & GIF文件是允许的。我尝试过多次解决,但是我无法自己找到解决方案,请提供正确的方法。上传图片到文件夹,并在PHP中插入数据库的路径和文本文件
.txt文件不在您允许的扩展名列表中... –
上传哪个文件? –
发生了什么?问题解决了? –