Reputation: 382
I'm successfully scrambling and uploading images to my database however the file path isn't saving to the 'profile' tab in my sql database. What's wrong here? How do i fix it.
include 'core/init.php';
function change_profile_image($user_id, $file_temp, $file_extn) {
$file_path = 'profile/' . substr (md5(time()), 0, 10) . '.' . $file_extn;
move_uploaded_file($file_temp, $file_path);
mysql_query("UPDATE `users` SET `profile` = " . $file_path . "' WHERE `user_id` = " . (int)$user_id);
}
if (isset($_FILES['profile']) === true) {
if (empty($_FILES['profile']['name']) === true) {
echo 'y u no choose 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_user_id, $file_temp, $file_extn);
header('Location: dontdelete.php');
exit();
}else {
echo 'y u no jpg or png or gif';
}
}
}
if (empty($user_data['profile']) === false) {
echo '<img src"', $user_data['profile'], '" alt="">';
}
?>
Upvotes: 4
Views: 500
Reputation: 717
Your line of code:
mysql_query("UPDATE `users` SET `profile` = " . $file_path . "' WHERE `user_id` = " . (int)$user_id);
Look at
`profile` = " . $file_path . "'
You forgot a ' at the beginning of $file_path
;)
Upvotes: 1