다시한번 질문드릴게요~!
본문
아무리 해봐도 적용이 안되어 다시한번 문의드려요 ㅠㅠ
인터넷 방송을 들으며 하고있지만 일주일동안 아무리이것저것해봐도 되지 않아 도움요청드려요
- 서버 image/profile안에 이미지는 정상적으로 저장되는데요
myadmin내에 g5_member -> profile(varchar 255) 데이터베이스로 저장이 되지않네요..
서버에는 이미지가 잘 저장이 되지만
데이터 베이스 저장에 저장이 되지않고 메인에 이미지 노출이되지않아요 ㅠㅠ
***아래에 outlogin.skin2.php 및 common.lib.php 에 기재한 함수있어요!
outlogin.skin2.php
<div class="profile">
<?php
if(isset($_FILES['profile']) === true){
if(empty($_FILES['profile']['name']) === true) {
echo 'please choose a file!';
} else {
$allowed = array('jpg','jpeg','gif','png');
$file_name = $_FILES['profile']['name'];
$file_extn = strtolower(end(explode('.', $file_name)));
$file_temp = $_FILES['profile']['tmp_name'];
if(in_array($file_extn, $allowed) === true){
change_profile_image($session_mb_id, $file_temp, $file_extn);
}else{
echo 'A';
echo implode(', ', $allowed);
}
}
}
if (empty($member['image']) === false) {
echo '<img src="', $member['image'], '" alt="', $member['mb_name'], '\'s Profile Image">';
}
?>
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="profile"><input type="submit">
</form>
</div>
common.lib.php
function change_profile_image($mb_id, $file_temp, $file_extn){
$file_path = 'images/profile/'. substr(md5(time()), 0, 10). '.' . $file_extn;
move_uploaded_file($file_temp, $file_path);
$sql = " update {$g5['member_table']} set image = '$file_path' where mb_id = '$mb_id' ";
sql_query($sql);
}
답변 2
image 필드 타입이 varchar 255 인데 $file_path 값이 255값을 넘어서 그럴수도 있습니다.
image 필드 타입을 변경해보세요
sql_query(" ALTER TABLE `{$g5['member_table']}` CHANGE `image` `image` TEXT ", true);
.
.
.
.
sql_query(" ALTER TABLE `{$g5['member_table']}` CHANGE `image` `image` TEXT ", true);
$sql = " update {$g5['member_table']} set image = '$file_path' where mb_id = '$mb_id' ";
function
change_profile_image(
$mb_id
,
$file_temp
,
$file_extn
){
global $g5;
.
.
$g5변수를 인식하지 않아서 인것 같네요