热搜:NVER 

图片以路径方式存入数据库 数据库设计 以及在页面中显示 急 !解决办法

2024-05-17 14:21:01
 图片以路径方式存入数据库  数据库设计   以及在页面中显示   急 !解决办法

图片以路径方式存入数据库 数据库设计 以及在页面中显示 急急急 !
<?php


if (is_uploaded_file($_FILES['upfile']['tmp_name'])){

$upfile=$_FILES["upfile"];

$name = $upfile["name"];
$type = $upfile["type"];
$size = $upfile["size"];
$tmp_name = $upfile["tmp_name"];
$error = $upfile["error"];


switch ($type) {
case 'image/pjpeg' : $ok=1;
break;
case 'image/jpeg' : $ok=1;
break;
case 'image/gif' : $ok=1;
break;
case 'image/png' : $ok=1;
break;
}

if($ok && $error=='0'){
 move_uploaded_file($tmp_name,'up/'.$name);
 echo "上传成功";
 echo "$name.
";
 echo "$type.
";
 echo "$size.
";
 echo "$tmp_name.
";
 
}
}


?>


  上传文件:
 
 

 



非常急 帮忙直接给改写代码吧!
这是一个头像上传 数据库为 zuoye 表 user 表中字段 id username name age email  
这个图片该怎么存到数据库 怎样设计数据库 求解释

------解决方案--------------------
'up/'.$name是你的文件地址。
没必要保存,因为文件地址= 'up/'.$name
------解决方案--------------------
看了一下,像上面说的 不需要保存路径到数据库吧?你的路径就是 up 文件夹而已.所以可以保存文件名到数据库.

数据库增加一个img 的字符型字段,长度为 50.

代码大约如此

PHP code

// 需要传递用户名,或者上传者的用户ID,可以用session来控制,看你的登录代码怎么写
// 假设为session 如果是GET id 请自行修改其他页面传递id  并且做赋值
session_start ();
// 赋值变量
$Uid = $_SESSION ['UserId'];
if (is_uploaded_file ( $_FILES ['upfile'] ['tmp_name'] )) {
    
    $upfile = $_FILES ["upfile"];
    
    $name = $upfile ["name"];
    $type = $upfile ["type"];
    $size = $upfile ["size"];
    $tmp_name = $upfile ["tmp_name"];
    $error = $upfile ["error"];
    
    switch ($type) {
        case 'image/pjpeg' :
            $ok = 1;
            break;
        case 'image/jpeg' :
            $ok = 1;
            break;
        case 'image/gif' :
            $ok = 1;
            break;
        case 'image/png' :
            $ok = 1;
            break;
    }
    
    if ($ok && $error == '0') {
        move_uploaded_file ( $tmp_name, 'up/' . $name );
        // 将文件名保存到数据库
        // 数据库链接部分,自行修正完整
        mysql_connect ();
        //更新数据库字段img 查询条件 用户id
        $SQL = "UPDATE  zuoye SET `img`='{$name}' WHERE `id`='{$Uid}'";
        mysql_query ( $SQL );
        if (mysql_affected_rows () > 0) {
            echo "上传头像数据更新成功";
            echo "$name.
"; echo "$type.
"; echo "$size.
"; echo "$tmp_name.
"; } else { echo '数据更新失败'; } } }