Keep photo in edit form - Cakephp 3

Friends, I have a form with a file field to add photos of products. If it is necessary to edit, I need to keep the photo that was registered at the first moment. I have this method for editing:

    public function edit($slug = null)
		$product = $this->Products->findBySlug($slug)->firstOrFail();
		if ($this->request->is('post') || $this->request->is('put')) {
				unlink(WWW_ROOT .$product->path.$product->img_produto);
				$filename = $this->request->data['img_product']['name'];
				$myext = substr(strchr($filename, "."), 1);
				$path = "img/img_products/".Security::hash($filename);
				$uploadFile = $path.$filename;
				if(move_uploaded_file($this->request->data['img_product']['tmp_name'], $uploadFile))
					$this->request->data['img_product'] = $filename;
					$this->request->data['path'] = $path;
			$product = $this->Products->patchEntity($product, $this->request->getData());
			if ($this->Products->save($product)) {

				return $this->setAction('index');

When I choose an image, it goes to the folder. But when I don’t choose, the img_product information is deleted from the database, and the path continues.

My question is to keep the img_product, just as it is done in the image path

My edit.ctp

              <div class="form-group row">
                <div class="col-sm-12 mb-3 mb-sm-0">
                  <?= $this->Form->control('img_product', [
                  'class' => 'form-control form-input',
                  'type' => 'file',
                  'label' => false,


        ->maxLength('img_product', 255)

        ->maxLength('path', 255)

I appreciate any comments.

Hi, when you don’t choose file, $this->request->data[‘img_product’] is null and it saved to database. You can try set dirty property img_product if $this->request->data[‘img_product’] == null. Docs:

I tried this:

     $this->request->data['img_product'] == null

But without success! I tried changed it to: $product->img_product == null

But it removes the value of img_product in the database, but the path is maintained.

     unset($this->request->data['img_product'] );

You can try it. Goodluck!

Thank you. That was it!