我正在使用此表单将图片的标题,链接和文章文本添加到数据库中。 我正在使用type =“text”作为图片链接,现在,在外部图片上传服务上上传图片并复制链接时,我会感到很自负。
我想上传图像,并将图像的LINK存储在数据库中。
表格:
<?php if (!$_POST["go"]){ ?>
<form method="post" action="">
<input name="article_title" type="text">
<input name="article_image_url" type="text"> <!-- i want here type="file" -->
<textarea name="article_text"></textarea>
<input type="submit" name="go" value="Submit">
</form>
<?php
} else {
$date=date("Y.m.d");
$title = $_POST["article_title"];
$image_url = $_POST["article_image_url"];
$text = $_POST["text"];
$sql="INSERT INTO articles (title,image_url,text,date) VALUES ('$title', '$image_url', '$text', '$date')";
if (mysql_query($sql)){
echo "done";}
else {echo "error<br>" . mysql_error();}}
?>
请帮助我:)
ps:对不起我的英语:$
答案 0 :(得分:1)
你应该做的第一件事,似乎你对SQL escaping一无所知,在你访问第一个$_POST
var之前添加以下内容:
$_POST = array_map("mysql_real_escape_string", $_POST);
然后你似乎想要为图像使用文件上传。如果是这样,请将url字段更改为:
<input type=file name=image>
此上传的文件将显示在$_FILES
中。在你阅读$ _POST中的其他字段之后,最好像这样使用它,
if ($img = $_FILES["image"]["tmp_name"]) {
$image_url = md5_file($img) . ".jpeg";
move_uploaded_file($img, "./upload/$image_url");
$image_url = "http://www.example.org/where/$image_url";
}
有很多安全问题。但这不在范围内,所以我将它硬连线到.jpeg
。手册及其评论中有很多信息:http://de2.php.net/manual/en/features.file-upload.php