2

需要帮助:我正在使用一个简单的 PHP 代码将照片上传到远程数据库。但是.. 每次,一张照片的两个副本都保存在数据库中。谁能告诉我我做错了什么?PHP代码:

<?PHP
$uploadDir = 'image_folder/'; 



$uploadDir = 'image_folder/'; 

if(isset($_POST['Submit']))  //info saving in the variables
{
$fileName = $_FILES['Photo']['name'];
$tmpName  = $_FILES['Photo']['tmp_name'];
$fileSize = $_FILES['Photo']['size'];
$fileType = $_FILES['Photo']['type'];
$filePath = $uploadDir . $fileName;
$result = move_uploaded_file($tmpName, $filePath); //moving the photo in the         destination
if (!$result) {
echo "Error uploading file";
exit;
}
if(!get_magic_quotes_gpc())
{
    $fileName = addslashes($fileName);
    $filePath = addslashes($filePath);
}
echo "".$filePath."";
$query = "INSERT INTO picture (image) VALUES ('$filePath')";
if (mysql_query($query))
{echo "Inserted";}
mysql_query($query) or die('Error loading file!'); 
}?>
4

4 回答 4

4
if (mysql_query($query))
{echo "Inserted";}
mysql_query($query) or die('Error loading file!'); 

你打mysql_query($query)了两次电话

于 2013-07-29T07:33:40.353 回答
1

你做mysql_query($query)了两次,第一次IF{}和之后。:D

附言。mysql_*功能被贬低,使用PDOmysqli

于 2013-07-29T07:34:06.647 回答
1

您正在使用mysql_query两次。尝试这个:

if (mysql_query($query)) {
  echo "Inserted";
} else {
 die('Error loading file!'); 
}
于 2013-07-29T07:36:29.180 回答
0

您正在执行 mysql_query 两次。将您的 if 修改为:

  if (mysql_query($query)) {
        echo "Inserted";
  } else {
     die('Error loading file!')
  }

并且,删除以下行:

 mysql_query($query) or die('Error loading file!'); 

注意:确保您阅读了http://in2.php.net/mysql_query中的警告框。mysql_* 函数已弃用。

于 2013-07-29T07:37:43.183 回答