我正在使用Mysql数据库和PHP做图像库CMS。我是新手。
我有路径问题。
这是我的文件结构:
这个php doc - root/php/upload_portrait.php
。
我的图片存储在此处 - root/images/portrait_gallery/
所以我添加了../
以保存root/images/portrait_gallery/
中的图片
这很好。
但是在db中,url与../一起存储,并且该路径不正确,因为它们是从根索引文件中调用的。所以没有图像出现。
如何删除数据库中的../
上的INSERT INTO
?
我尝试过替换和更新,但无法弄清楚如何。
这是我的代码
$portrait_url= $_FILES['upload'];
// 2. connect to database:
include 'connect.php';
// 4. handle moving image from temp location to images folder (using the function billedupload)
$billedurl = billedupload($portrait_url);
if($billedurl == false){
die("Something is wrong");
}
// 5. Insert imageupload in database:
$query = "INSERT INTO portrait (portrait_id, portrait_url) VALUES ('$portrait_id', '$billedurl')";
$result = mysqli_query($dblink, $query) or die( "Forespørgsel 2 kunne ikke udføres: " . mysqli_error($dblink) );
// 6. close connection
mysqli_close($dblink);
function billedupload($filearray){
if($filearray['type']=='image/jpeg' or $filearray['type']=='image/png'){
$tmp_navn = $filearray['tmp_name'];
$filnavn = $filearray['name'];
$url = '../images/portrait_gallery/' . time() . $filnavn;
move_uploaded_file($tmp_navn, $url);
return $url;
}
else{
return false;
}
}
答案 0 :(得分:1)
我相信你有2个选择。
str_replace()可能是您需要的功能,如前一张海报所述。
答案 1 :(得分:0)
如果你需要删除'/ ..' - 那么,
str_replace
是PHP中的一个函数,允许您动态删除/更改部分字符串,因此,在您的代码中,
替换
$billedurl = billedupload($portrait_url);
与
$billedurl = str_replace('/..','',billedupload($portrait_url));