Php 显示mysql数据库中的图像时出现问题
我已经在这个问题上工作了相当长的一段时间,并做了研究,但我什么也没做 我能找到的是我的问题。我正在为我的每个用户创建一个配置文件页面 注册我们的网站。在此注册过程中,用户添加配置文件数据以及 配置文件图像。用户登录ok并正确显示所有内容,但在显示 上传图像返回上传文件的名称,而不是实际图像Php 显示mysql数据库中的图像时出现问题,php,mysql,image,Php,Mysql,Image,我已经在这个问题上工作了相当长的一段时间,并做了研究,但我什么也没做 我能找到的是我的问题。我正在为我的每个用户创建一个配置文件页面 注册我们的网站。在此注册过程中,用户添加配置文件数据以及 配置文件图像。用户登录ok并正确显示所有内容,但在显示 上传图像返回上传文件的名称,而不是实际图像 Profile Page for testuser</br> Username: testuser</br> Name: testuser</br>
Profile Page for testuser</br>
Username: testuser</br>
Name: testuser</br>
Birthdate: January Day, 1980</br>
Member Role: Tester</br>
Genre: cool stuff</br>
Personal Details</br>
E-mail: test@yahoo.com</br>
Profile Image: pic.jpg</br>
Location: test, California 90100</br>
下面是登录代码。请帮忙
<?php
$img_url = "uploads";
//loginscript.php
//check if variables were received
if(($_POST['username']!=NULL) && ($_POST['password']!=NULL)):
//if yes, proceed with script
//get POST variables and use md5 for password encryption
$uname = $_POST['username'];
$pass = $_POST['password'];
//connect to database
$link = dbconnect();
//check username validity
$validUser = checkUsername($uname);
//throw error on invalid username
if(!$validUser){
die('The specified user does not exist!');
}
//compare username/password
$sql = "SELECT COUNT(*) FROM tbldatabase WHERE username = '$uname' AND password = $pass'";
$query = mysql_query($sql);
if(!$query){ die('MySQL failed with error: '.mysql_error()); }
//throw error on username/pass mismatch
if(!mysql_result($query,0,0)){
//if result < 1, username/password mismatch
die('The password entered does not match test');
}
//validation successful, login (or just display info)
$sql = "SELECT ID FROM tbldatabase WHERE username = '$uname'";
$query = mysql_query($sql);
if(!$query){ die('MySQL failed with error: '.mysql_error()); }
$UID = mysql_result($query,0,0);
$data = getTableData('tbldatabase',$UID);
$uInfo = mysql_fetch_array($data, MYSQL_BOTH);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?=$uInfo['username'] ?>'s Page</title>
<style type="text/css">
#apDiv1 {
position: absolute;
width: 200px;
height: 115px;
z-index: 1;
}
#apDiv2 {
position: absolute;
width: 200px;
height: 115px;
z-index: 1;
}
</style>
</head>
<body>
<?php ?> <b>Profile Page for <?=$uInfo['username'] ?> </b><br />
Username: <?=$uInfo['username'] ?><br />
Name: <?=$uInfo['firstname'].' '.$uInfo['lastname'] ?><br />
Birthdate: <?=$uInfo['bmonth'].' '.$uInfo['bdate'].', '.$uInfo['byear'] ?> <br />
Member Role: <?=$uInfo['memberrole'] ?><br />
Music Genre: <?=$uInfo['genre'] ?><p />
<p><b>Personal Details</b><br />
E-mail: <?=$uInfo['email'] ?><br />
Profile Image: <?=$uInfo['Image'] ?><br />
Location: <?=$uInfo['city'].', '.$uInfo['state'].' '.$uInfo['zipcode'] ?><?php ?>
</p>
<p> </p>
</body>
</html>
<?
else:
die('necessary information requested from profile page is missing or omitted');
endif;
将图像包裹在img标记内
还要确保src指向其所在的图像路径。图像应始终显示在标签中 替换
Profile Image: <?=$uInfo['Image'] ?><br />
与
图像的路径应该正确。请删除所有额外的代码,只包括与问题相关的代码。我给你一个提示:显示上传图像保存到数据库的代码。然后显示从数据库中读取的代码。然后最后向用户显示显示图像的代码//将图像上载到的表单配置文件图像//处理并发送到DB$image=$\u文件['image']['name']$query=插入tbldatabase ID、firstname、lastname、图像值NULL、“$firstname”、“$lastname”、“$Image”;e//登录过程和查询DB$sql=从tbldatabase中选择ID,其中username='$uname';//构建SQL查询以获取相关ID$query=mysql\u query$SQL;//查询数据库if$查询{die'MySQL失败,错误为:'.MySQL_error;}//else返回错误$UID=MySQL_result$query,0,0;//获取用户ID//获取指定用户的信息$data=getTableData'tbldatabase',$UID;$uInfo=mysql\u fetch\u array$data,mysql\u两者;?>//显示表格数据\Username:Profile Image的配置文件页面://我可以查看mysql并查看数据库中的图像,但当我回忆起图像时,它只显示文件名,而不是实际的图像。谢谢您的帮助,因为我在这件事上遇到了麻烦。我根据请求进行了更改,以包括图像的src,以及通过url可以访问的路径。但是,我现在只看到一个空白图像,而在浏览器中我看到的是一个真实的图像。以下是我的变化;Profile Image:mysite.com/uploads/alt='no Image available'>@phpapprentice他们将此更改为alt='no Image available'>并重试。。。为了确认$uInfo['Image']的价值是多少?我收到了完全相同的问题,图像看起来几乎像一个图像占位符。你知道那里应该有一个图像,但没有任何显示。我需要添加一个文件的扩展名,比如jpg、png等吗?它会在img src路径中吗?你能举个例子吗?谢谢你的帮助,因为我在这件事上真的碰到了麻烦。我根据请求进行了更改,以包括图像的src,以及通过url可以访问的路径。但是,我现在只看到一个空白图像,而在浏览器中我看到的是一个真实的图像。以下是我的变化;个人资料图片:mysite.com/uploads/alt='无可用图片'>
Profile Image: <?=$uInfo['Image'] ?><br />
Profile Image: <img src="<?=$uInfo['Image'] ?>" alt='no image available'><br />