BA $ LIK:
现场比萨:
现场uzun:
类别: ”。$吉[ISIM] “”; }?> tiklanma:
tarih:“name =”tarih“/> içerik:和post.php值:
mysql_query("INSERT INTO yazilar (baslik, spot, spot_kisa, icerik, kategori, tiklanma, eklemetarihi)
VALUES
('$_POST[baslik]','$_POST[spot]','$_POST[spot_kisa]','$_POST[icerik]','$_POST[kategori]','$_POST[tiklanma]','$_POST[tarih]')");
我需要在上传表单的表格中添加2个图片链接,并使用post.php插入db。两个不同大小的缩略图。
谢谢!
答案 0 :(得分:0)
有多种有效的方法可以解决您的问题。 我要展示我能想到的最简单的一个。
您的表单必须进行以下修改:
将ENCTYPE属性添加到表单标记:
<form action="post.php" method="post" enctype="multipart/form-data">
插入文件上传框(您可以使用控件数组,如image[]
,但我会保持简单):
Image 1: <input type="file" name="image1" />
{
{1}}
请注意,通过POST表单发送文件意味着上传大小不能超过2,048 Kb(2兆字节)。
准备好接收文件的目录,它应该具有适当的权限设置,以便用户可以在您的服务器中编写(如果它是Linux服务器,您可以使用chmod 777)。在此示例中,我的文件夹将被称为“用户图像”。
然后,在 post.php 中添加以下内容:
Image 2: <input type="file" name="image2" />
关于调整图像大小以生成缩略图,您可以使用GD库调整大小并存储文件或您可以使用GD库(也可以使用GD库,但不要在您的文件中加载JPEG文件HTML显示的IMG标记,您将加载这样的PHP文件:)
$upload_to = "./user-images/";
move_uploaded_file(
$_FILES["image1"]["tmp_name"],
$upload_to . "/" . $_FILES["image1"]["name"]
);
move_uploaded_file(
$_FILES["image2"]["tmp_name"],
$upload_to . "/" . $_FILES["image2"]["name"]
);
?>
可轻松生成图像文件的链接:
<img src="thumbnail.php?src=image1.jpg&w=90&h=50" />
如果您需要绝对网址,只需在$link = $upload_to . "/" . $_FILES["image1"]["name"]
之前添加您的域名地址。
这只是一种做法。您还可以将图像的二进制内容添加到数据库中(因为我们讨论的是缩略图,我们不应该有问题,默认情况下,MySQL查询的长度限制为1 Mb)。这可以使用数据库表中的BLOB字段和$upload_to
(使用PHP 5)或file_get_contents()
以二进制模式/ fopen()
/ fread()
(使用PHP 4)来读取文件并将它们转储到数据库中。始终建议对文件进行编码,以使SQL查询不被破坏(通常可以使用fclose()
或base64_encode()
执行此操作。)
希望这可以帮到你。祝你好运!