-1

save_photo.php

$upload_image=$_FILES[" myimage "][ "name" ];
$folder="assets/img/photos/";
move_uploaded_file($_FILES[" myimage "][" tmp_name "], "$folder".$_FILES[" myimage "][" name "]);

$query = $db->prepare("UPDATE  profile SET photo = :photo WHERE username = :username;");
$query->bindValue(':photo', $folder.$upload_image);
$query->bindValue(':username', $username);
$query->execute();

the_form.php

<form method="POST" action="save_photo.php" enctype="multipart/form-data">
<input type="file" name="myimage" style="display:initial">
<input type="submit" name="submit_image" value="Upload">
</form>

error.log returns absolutely no errors. When I click submit, it appears to send to save_photo.php. However no file is saved on the server nor is any location added to database.

What am I missing or doing wrong?

Bruce
  • 910
  • 1
  • 6
  • 24
  • Why are you using white spaces `[" myimage "]` to access the keys? It should be [giving you](https://3v4l.org/9s9uX) _type 8 -- Undefined index_... Please, refer to [How do I get PHP Errors to display?](http://stackoverflow.com/questions/1053424/how-do-i-get-php-errors-to-display) – FirstOne Jul 31 '16 at 19:02

2 Answers2

1

try php code:

$upload_image=$_FILES["myimage"]["name"];
$folder="assets/img/photos/";
move_uploaded_file($_FILES["myimage"]["tmp_name"], $folder.$upload_image);

$query = $db->prepare("UPDATE  profile SET photo = ':photo' WHERE username = ':username';");
$query->bindValue(':photo', $folder.$upload_image);
$query->bindValue(':username', $username);
$query->execute();
0

You should write this code. This will solve your problem

$upload_image=$_FILES["myimage"]["name"];
$folder="assets/img/photos/";
move_uploaded_file($_FILES["myimage"]["tmp_name"], $folder.$upload_image);

$query = $db->prepare("UPDATE  profile SET photo = ':photo' WHERE username = ':username';");
$query->bindValue(':photo', $folder.$upload_image);
$query->bindValue(':username', $username);
$query->execute();
Jahid Mahmud
  • 1,072
  • 1
  • 11
  • 28