Php 如何插入图像?
下面是我的代码文件。。。 我无法插入图像。获取错误为,未定义变量:imagePhp 如何插入图像?,php,html,mysql,Php,Html,Mysql,下面是我的代码文件。。。 我无法插入图像。获取错误为,未定义变量:image <html> <head> <title> Upload an image </title> </head> <body> <form action="image-disp.php" method="post" enctype="multipart/form-data">
<html>
<head>
<title> Upload an image </title>
</head>
<body>
<form action="image-disp.php" method="post" enctype="multipart/form-data">
File:
<input type="file" name="image" value=iamge><br>
<input type="submit" value="Upload">
</form>
<?php
mysql_connect("localhost", "root", " ") or die(mysql_error());
mysql_select_db("mysql") or die(mysql_error());
echo "connected";
if (!isset($_FILES['image'] ['tmp_name'])) {
echo "Choose an image";
} else {
echo $image = addslashes($_FILES['image'] ['tmp_name']);
echo $image_name = addslashes($_FILES['image']['name']);
echo $image_size = getimagesize($_FILES['image'] ['tmp_name']);
}
if ($image_size = FALSE) {
echo "It's not an image";
} else {
$result = "INSERT INTO testblob (image_id, image, image_size) "
. "VALUES (' ' ,'$image', '$image_size')";
}
echo "inserted";
?>
</body>
</html>
上传图像
文件:
您的错误来自PHP,而不是MySQL。这意味着变量$image没有定义,因为它没有填充任何内容
您的代码不会存储实际图像,而是存储文件名
您需要删除该空间
echo $image = addslashes($_FILES['image']['tmp_name']);
而且,您甚至没有让它执行查询
if ($image_size == FALSE) {
echo "It's not an image";
} else {
$result = mysql_query("INSERT INTO testblob (image_id, image, image_size) "
. "VALUES (' ' ,'$image', '$image_size')");
}
请看这里的一个基本示例:最好只将图像的名称保存在数据库中,并将文件保存在某个文件夹中
$result = "INSERT INTO testblob ( image, image_size)
VALUES ('$image_name', '$image_size')";
然后像这样检索它:
<img src="path/<?php echo $row['image_name'];?>">
“>
首先创建一个表。
Mysql查询
CREATE TABLE storeimage(image\u id tinyint(3)NOT NULL自动增量,image blob NOT NULL,KEY image\u id(image\u id))引擎=MyISAM默认字符集=latin1;
在数据库中存储图像的代码:
文件:
请看下面的问题:这几乎是你问的问题,请看,1)2)如果($image\u size=FALSE),你在中做错了< /代码> 3)你没有<代码> MySQLYQuase<代码>来执行SQL查询4)给定<代码> IMAGEIII/<代码>是<代码> AutoPosial字段,你不需要把它包含在查询5中)你有一个空间在<代码> $$文件[图像] ['TMPYNAME]中]
6)mysql\u*
库已被弃用,您应该使用MySQLi或PDO和prepared语句来防止SQL注入,因为您的代码易受攻击!@Prix此处的空间不是问题。但我们仍然对此进行了投票:-pWell基本上,如果他想打印结果,回音应该很好,但我相信他只是想要d将其分配给变量。如果您从未听说过使用手册本身,请避免将w3schools列为源代码。此处允许空格,并且回音
不会干扰分配。除非这是一个查询-不是结果!