2
我一直在关注YouTube上的“在MySQL数据库中上传/存储图片”这个教程,但这个问题已经两天了,我一直在试图调试这个问题的最后两天,但无法弄清楚它是什么。问题上传图片
下面的代码:
<?php
// connect to database
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("databaseimage") or die(mysql_error());
// file properties
$file = $_FILES['image']['tmp_name'];
if (!isset($file))
echo "Please select an image.";
else
{
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name = addslashes($_FILES['image']['name']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
if ($image_size==FALSE)
echo "That's not an image.";
else
{
if (!$insert = mysql_query("INSERT INTO store VALUES ('', '$image_name',
'$image')"))
echo "Problem uploading image.";
else
{
$lastid = mysql_insert_id();
echo "Image uploaded.<p />Your image:<p /><img src=get.php?id=$lastid>";
}
}
}
?>
每当我试着上传.png文件或.jpeg文件,代码打“其他”的情况下内的“如果”的情况下,不传递相呼应出“问题上传图片”。 我完全按照教程所做的那样,在教程中的人员能够通过该“if”情况并实际击中最后部分并回应“图片上传”。
任何人都知道问题可能是什么?
这表明我的错误是,“错误的整数值:''列'第一行的'id'“。所以我在'$ image_name'之前的空白''中放置了一个任意数字,它使它成功,但我认为我不需要输入数字,因为通过数据库,我将ID设置为PRIMARY,自动递增。我应该在这个空白处填写“来解决这个问题? (我不想让那个任意数字在那里,因为它不觉得正确) – user2512888
@ user2512888如果你的id是AI,那么你使用的插入没有列名,而不是简单地使用这个查询'“INSERT INTO store(image_name_column_name ,another_column_name)VALUES('$ image_name','$ image')“''//将列名替换为真正的名字' –
我明白了,Alien先生,您先生是魔术师,让我成为您的学徒。但是,你是如何学习所有这些知识的呢? (你是否只是阅读所有的文件?)教导我部队的方式。 – user2512888