2016-04-06 2 views
1

Пользователь, который вошел в свой аккаунт, должен изменить фотографию своего профиля, и мне кажется, что у него проблемы с этим. Вставка фотографий в таблицу profile, но не в строку входа пользователя. Она просто создает другую запись в базе данных. настоящее время у меня это в моем profilephoto.php:Как вставить пользователя в путь изображения в базе данных с помощью mysqli?

<?php 
    include 'session.php'; 
    ?> 
    <form action="update.php" method="POST" enctype="multipart/form-data"> 
      <input type="file" name="file_upload" class="form-control"> 
      <input type="submit" name="submit" value="Change Photo" style="float: right"/> 
    </form> 

И это мой update.php

<?php 
session_start(); 
include_once('dbcontroller.php'); 
if(isset($_POST['submit'])) { 

    if(move_uploaded_file($loc, '../admin/profile-avatars/'.$final_file)) { 
     $sql = mysqli_query($conn, "INSERT INTO profile WHERE username='$login_session' (profilePhoto, photoType, photoSize) VALUES('$final_file','$type','$new_size')"); 

     echo "<script type='text/javascript'>alert('Profile successfully updated.'); 
       window.location.assign('profilephoto.php');</script>"; 
    } 
} 

?> 

EDIT: Это сейчас работает. Спасибо вам Сагар Пател и DevilaN :) Моя ошибка была в моем запросе, который:

$sql = mysqli_query($conn, "INSERT INTO profile WHERE username='$login_session' (profilePhoto, photoType, photoSize) VALUES('$final_file','$type','$new_size')"); 

, которые должны быть:

$sql = mysqli_query($conn, "UPDATE profile SET profilePhoto='$final_file', photoType='$type', photoSize='$new_size' WHERE username='$login_session'"); 

ответ

2

пожалуйста, напишите ниже запрос вместо вставки запроса

UPDATE profile SET profilePhoto='$final_file', photoType='$type', photoSize='$new_size' WHERE username='$login_session' 
+0

наконец! Сейчас он работает, спасибо, сэр! : D – user6151429

+0

Большинство приветствуется :) –

1

Вместо того, чтобы использовать INSERT (который НЕ обновлять запрос), вы должны использовать

UPDATE profile SET [values set here] WHERE username='$login_session'; 
+0

Вы правы. Поэтому я обновляю его. У меня теперь есть этот '$ sql = mysqli_query ($ conn," профиль профиля UPDATE (profilePhoto, photoType, photoSize) VALUES ('$ final_file', '$ type', '$ new_size') WHERE username = '$ login_session' ") ; 'НО изображение все еще не вставляет/обновляет в строке пользователя. – user6151429

+0

Вы уверены, что $ login_session содержит правильное значение для условия? Вызывает ли ошибка? – DevilaN

+0

Да, я уверен. И нет, у него нет никакой ошибки сэр. – user6151429