-2
我是新来的PHP和MYSQL试图学习和正在进行的项目。我正在关注个人资料照片上的代码教程,我正在尝试上传由特定用户ID上传的多张照片。它可以很好地上传到文件目标,但是我遇到的问题是将它存储到数据库中。MySQL插入到表中不插入
这里是我的upload.php的
<?php
session_start();
//connection to database
include_once('dbh.inc.php');
$id = $_SESSION['u_id'];
if(isset($_POST['submit'])){
//getting the file
$file = $_FILES['file'];
//file info
$fileName = $_FILES['file']['name'];
$fileTmpName = $_FILES['file']['tmp_name'];
$fileSize = $_FILES['file']['size'];
$fileError = $_FILES['file']['error'];
$fileType = $_FILES['file']['type'];
$fileExt = explode('.',$fileName);
$fileActualExt = strtolower(end($fileExt));
//allowed formats
$allowed = array('jpg','jpeg','png');
//check if the format uploaded is allowed
if(in_array($fileActualExt,$allowed)){
if($fileError===0){
if($fileSize < 1000000){
//setting up for a new file name
$fileNameNew = $id.".".$fileName.".".$fileActualExt;
$fileDestination = 'uploads/' . $fileNameNew;
move_uploaded_file($fileTmpName,$fileDestination);
//inserting into database
$sql = "INSERT INTO imageuploads (image,uid_fk) VALUES ('$fileNameNew','$id')";
mysqli_query($conn,$sql);
header("Location: ../artsy.php?uploadsuccess");
}else{
echo "This file is too large";
}
}else{
echo "There was an error uploading this file";
}
}else{
echo "You cannot upload files of this type";
}
}
的imageuploads数据库包含“img_id”这是自动递增,“图像”,这是一个varchar将包含新的文件名,“uid_fk”,这是一个引用用户标识的外键标识。
我没有收到任何错误,但没有创建新行,但是当我在SQL本地主机上运行它时,它很好,并创建了一个新行。
如果你没有收到错误的可能是因为你没有添加一些错误检查就像mysql错误返回后的查询,可能是你没有检查日志服务器我的意思是Apache日志或MySQL日志PHP日志... – 2017-09-23 15:29:31