Olá, minha dúvida é a seguinte, tenho meu projeto separado em pastas:
- controller/
- ClienteController.php
- dao/
- GenericDAO.php
- model/
- Cliente.php
Meus arquivos na raiz:
- conexao.php
- clientes.php
- novo-cliente.php
Minha pagina de cadastrar novo cliente:
<?php
require_once('cabecalho.php');
require_once('dao/GenericDAO.php');
require_once('logica-empresa.php');
verificaEmpresa();
$cliente = array("nome" => "", "cnpj" => "", "telefone" => "", "email" => "", "celular" => "", "tipo_pessoa" => "0", "inscricao_estadual" => "");
$cliente[0]["imagem"] = "img/semFoto.svg";
?>
<div class="blocoTituloPagina">
<h1>Novo Cliente</h1>
</div>
<form action="controller/ClienteController.php" method="post" enctype="multipart/form-data">
<div>
<?php include("cliente-formulario-base.php"); ?>
<div class="pBlocoButton">
<a href="clientes.php" class="pButton">Voltar</a>
<button class="pButton pButtonSalvar" type="submit">Cadastrar</button>
</div>
</div>
</form>
<?php require_once('rodape.php'); ?>
Meu ClienteController.php
<?php
require_once 'model/Cliente.php';
require_once 'dao/GenericDAO.php';
class ClienteController {
public function salvar() {
$dao = new GenericDAO();
// logica para salvar cliente no banco
if(isset($_POST['id'])) {
$id = $_POST['id'];
}
$nome = $_POST["nome"];
$cnpj = $_POST["cnpj"];
$inscricaoEstadual = $_POST["inscricaoEstadual"];
$telefone = $_POST["telefone"];
$email = $_POST["email"];
$celular = $_POST["celular"];
$tipoPessoa = $_POST["tipoPessoa"];
$caminhoImg = "img/empresas/empresa-{$_SESSION['empresa_id']}/clientes/";
$imagem = uploadArquivo($caminhoImg);
$cliente = new Cliente();
$cliente->nome = $nome;
$cliente->cnpj = $cnpj;
$cliente->inscricao_estadual = $inscricaoEstadual;
$cliente->telefone = $telefone;
$cliente->email = $email;
$cliente->celular = $celular;
$cliente->tipo_pessoa = $tipoPessoa;
$cliente->imagem = $imagem;
$objCliente = $dao->inserir("clientes", $cliente);
}
public function atualizar() {
// logica para atualizar cliente no banco
}
public function remover() {
// logica para remover cliente do banco
}
public function listar() {
$dao = new GenericDAO();
// logica para listar toodos os clientes do banco
$objListaClientes = $dao->listarAll("clientes");
$_REQUEST['clientes'] = $objListaClientes;
require_once 'clientes.php';
}
}
?>
Porém quando eu dou o submit para o meu controller/ClienteController.php ele me retorna este erro:
Warning: require_once(model/Cliente.php): failed to open stream: No such file or directory in C:\xampp\htdocs\SistemaVrau-OO\controller\ClienteController.php on line 2.
Como se ele não conseguisse achar o arquivo, por estar em uma pasta a frente. Gostaria de saber se tem como eu dar um require_once pela raiz, para ele não dar esses conflitos de pastas.