Solution Call to a member function move() to null

Created At: 2023-05-15 17:29:34 Updated At: 2023-05-15 18:03:21

PHP File Upload Problem. PHP may give you two types of error

Call to a member function move() to null

or

PHP - mkdir(): Permission denied

If you see the above error, that means you are having problem creating a directory. Since your server apache or nginx does not have the permission to create a directory, the move() function can not create and move a file.

In general the permission issue happens if you change server or upload your project to a completely new server. 

There are a few ways to grant your apache or nginx server to create file permission. Here's how I did it.

sudo chown -R www-data /folder

Here www-data for Ubunto 

sudo chown -R apache /folder

for Linux server

-R means recursively. So in general if you want to create a file inside uploads folder, then it would like below

sudo chown -R www-data /var/www/html/example.com/public/uploads

sudo chown -R apache /var/www/html/example.com/public/uploads

Folder path could be anyone for you.

There's another approach that could work as well

Last approach for changing the file creating permission is to let SELinux do it for you. But you need to assign permission to it.

chcon -R -t httpd_sys_content_t /path/to/www
chcon -R -t httpd_sys_content_rw_t /path/to/www/dir/for/rw

Comment

Add Reviews