Php 问题上传图像
我一直在关注YouTube上的“上传/存储MySQL数据库中的图像”教程,但这一问题持续了两天,我在过去两天一直在尝试调试这个问题,但不知道它是什么 代码如下:Php 问题上传图像,php,file-upload,Php,File Upload,我一直在关注YouTube上的“上传/存储MySQL数据库中的图像”教程,但这一问题持续了两天,我在过去两天一直在尝试调试这个问题,但不知道它是什么 代码如下: <?php // connect to database mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("databaseimage") or die(mysql_error()); // file properties
<?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>";
}
}
}
?>
如果它在上传图像时向您抛出了一个问题,而不是它可能进入的问题如果
条件是您的查询失败,您应该使用mysql\u error()
阅读一条友好的消息,这就是导致您的查询失败的原因
echo "Problem uploading image.".mysql_error($connection);
//Replace connection with the connection var
注意:代码是完全脏的,而且它使用了不推荐的mysql\uuz()
。所以
开始学习mysqli_389;()
或PDO,您的代码也容易被SQL注入,在将任何用户提供的数据插入数据库之前,最好先清理数据并转义字符串
此外,您没有检查用户上载的文件扩展名和文件大小,因此出于安全原因,您也必须这样做,并保存上载到服务器上的大型文件…这向我表明错误是,“第1行的列“id”的整数值不正确:“”。所以我在“$IVIGENONEX”之前的空白处放了一个任意的数字,它使它有效,但是我认为我不需要输入一个数字,因为通过数据库,我设置了ID是主的和自动增量的。要解决此问题,我应该在空白“”中输入什么?(我不想把那个任意数字放在那里,因为它感觉不对)@user2512888如果你的id是AI,你使用的是不带列名的insert,而不是简单地使用这个查询“insert-INTO-store(image\u-name\u-column\u-name,另一个\u-column\u-name)值('$image\u-name','$image')”
//用真名替换列名
我明白了,外星人先生您是魔术师,让我当您的学徒吧。但实际上,你是如何学习所有这些并拥有如此多的知识的呢?(你只是阅读了所有的文档吗?)教我原力的方法。@user2512888谢谢,我只是从各种资源中学习,我开发不同的项目,遇到某些问题,我调试,这就是我不断学习的方式,如果这解决了你的问题,您可以将答案标记为正确,以便其他人可以引用:)@user2512888您可以在我的个人资料中看到信息,您将获得一个包含我电子邮件的base_64编码字符串,您可以对其进行解密。。