ROTAS, CALL BACKS E ESTRUTURA MVC COM ROUTER | PHP TIPS

Поделиться
HTML-код
  • Опубликовано: 22 янв 2025

Комментарии • 211

  • @vanderwylde
    @vanderwylde 4 года назад +21

    Caraca, isso que é profissionalismo.
    Tudo bem explicado e seguindo todos os padrões de projeto.
    Tem curso por ai que promete muito e não segue nada...

  • @wanderbarreto2306
    @wanderbarreto2306 5 лет назад +3

    Robson, chegou bem onde eu precisava, e esse material que você desenvolveu realmente é excepcional, eu estava usando o Slim framework para rotas, porque havia visto em outros cursos, porém eu sempre encontrava barreiras, porque não conseguia configurar por exemplo uma url base, ele ja pegava automaticamente, e isso acabava gerando diversos problemas, fora que eu não conseguia resgatar esses erros posteriormente, e o melhor dessa aula é que eu consegui pegar bem como funciona essa questão do MVC e como todo esse material conversa entre si. valeu, estou ansioso para os próximos conteúdos #phptips

  • @kacesaragenciafindweb5469
    @kacesaragenciafindweb5469 5 лет назад +2

    Boa noite, mestre,
    Estou estudando novamente o curso FSPHP com toda calma e já esta aparecendo novos projetos para fazer , onde nesse curso esta dando mais visão, para criação do sistema.
    Mais com essa explicação, que é FODA.. não tem como dizer que é dificil..
    Parabens e #BORAFSPHP.......... JUSTO SEMPRE ( UBUNTU )

  • @rmsraph
    @rmsraph 4 года назад

    Essas tuas aulas são brabas demais... Parabéns

  • @loliveirabernhoeft3509
    @loliveirabernhoeft3509 3 года назад

    Só faltou o botão de dar like * 1000.
    Muito fera!

  • @osvaldocapirdastecnologias6623
    @osvaldocapirdastecnologias6623 4 года назад

    Seus vídeos têm sido muito úteis para mim.

  • @johnnycardoso1965
    @johnnycardoso1965 3 года назад

    Excelente aula. MVC descomplicado. Robson articula muito bem e entende do riscado.
    Sucesso, sempre!! :)

  • @marciocarvalho8081
    @marciocarvalho8081 Год назад

    Muito top e profissional, quero programar nesse nivel

  • @studioragenciademarketing1590
    @studioragenciademarketing1590 5 лет назад

    em pessoal isso aqui esta bom de mais, curti ai porque vale muito apena

  • @GuilhermeLopesSousaPinto-le8ey
    @GuilhermeLopesSousaPinto-le8ey 4 года назад

    Cara, que aula!!!! muito obrigado!

  • @britosql
    @britosql 5 лет назад +3

    Boa Noite Robson, estou agregando conhecimento com mais essa série sua, muito bom o conteúdo. Parabéns e obrigado!
    Especificamente nessa aula Perdi um tempo bom, pois não funcionava logo no início, no retorno de erros e percebi que era o .htaccess, então segue a dica:
    Dentro do arquivo de configuração do Apache (/etc/httpd/conf/httpd.conf) procure pela diretiva e altere o trecho...
    -------------------------------
    AllowOverride None
    para...
    AllowOverride All
    ------------------------------
    Isso pra quem tá no ambiente localhost.
    ;--)

    • @luciolemos9681
      @luciolemos9681 6 месяцев назад

      Dica de ouro, irmão. Valeu! Perdi alguns dias estudando o problema. Estou programando direto em servidor remoto e sua dica também é válida em VPS.

  • @Daniel83693
    @Daniel83693 3 года назад

    Muito boa seus explicações parabéns mesmo

  • @gabrieldasilva6797
    @gabrieldasilva6797 5 лет назад +1

    Aula muito boa, um dia quero ser bom igual a você Robson na programação

  • @falves77
    @falves77 4 года назад

    Mais uma mega aula, super power.

  • @maxwiliamvitorino6153
    @maxwiliamvitorino6153 4 года назад

    Cara é um monstro!

  • @luansantos445
    @luansantos445 5 лет назад +1

    Os melhores vídeos, essa playlist está sensacional, não tem o que melhorar, o único problema é que ela acaba!

  • @Bielito92
    @Bielito92 4 года назад

    Excelente Conteúdo, parabéns!

  • @maelsonti
    @maelsonti 4 года назад

    O Robson é Top demais!!

  • @Wildersk8
    @Wildersk8 5 лет назад +1

    Muito bom assistir o vídeo e estar entendendo, mas já sangrei muito para entrar na cabeça, mas só se aprende programando então #BoraProgramar

  • @Oifilipemeia
    @Oifilipemeia 4 года назад

    Aprendendo muito

  • @mardoniomelo4783
    @mardoniomelo4783 5 лет назад +1

    Já compartilhei! Tava esperando por essa aula a tempos. Top de mais. Vlw Robson!

  • @codandodev
    @codandodev 3 года назад +1

    Fala ai, galera!! Adorei o curso, na real ainda fazendo, mas curtindo muito! Vou fazer também o curso da upinside.
    Essa parte do curso é como se fosse o routes/web.php do Laravel né :)

  • @robsonpiresborges5251
    @robsonpiresborges5251 5 лет назад

    E aí xará! Gostei da didática e qualidade do vídeo, muito bom. Ainda preciso de mais base pra acompanhar. Massa!

  • @CarlosMartins-yp8yf
    @CarlosMartins-yp8yf 4 года назад

    valeuuu show Cabo Verde

  • @leovieira_
    @leovieira_ 3 года назад

    Que playlist sensacional

  • @jamesonalex23
    @jamesonalex23 4 года назад

    Ótima aula! parece que estou mim deparando com as ROUTE do Laravel rsrs.

  • @vinicre
    @vinicre 5 лет назад +1

    Parabéns pelo conteúdo! Se continuar assim vou me inscrever no Curso. Ótimo! Vou continuar a playlist para ver se tem a implementação do framework com a camada de visão para renderizar os templates. ;)

  • @fatosdefato
    @fatosdefato 5 лет назад +1

    bom acho a sua aula sem duvida ótima se vc consegui se no final cria se uma aula com todos os exemplos trabalhando juntos e se vc poder usar as nomeclaturas do mvc acho que ficaria mais facil do que cria a nossa propria estrutura sei la tmj sempre

  • @adriannos9516
    @adriannos9516 4 года назад

    Olá tudo bem? nesta sua biblioteca, existem métodos para obter dados do header, obter o body de um post, e respostas como por exemplo forçar um status code? sua explicação ficou bem clara, estou tentando adaptar um projeto de APi meu que já funciona neste seu modelo de rotas, eu tenho alguns métodos que fazem isso que lhe perguntei, mas gostaria que já fossem acoplados a biblioteca.

  • @AtshopBr
    @AtshopBr 4 года назад

    Muito bom.

  • @monesiglio
    @monesiglio 5 лет назад +5

    Robson, sensacional, agradeço muito pelo conhecimento e profissionalismo. Você pode apresentar como utilizar o Plates junto? Um grande abraço e mais uma vez muito obrigado.

  • @yancamilo9875
    @yancamilo9875 4 года назад

    Desse jeito eu consigo responder uma requisição ajax com json??

  • @Tiosilvah
    @Tiosilvah Год назад +1

    Eu estou passando por esse mesmo problema 22.05.23...
    Fiz a atualização do meu PHP para 8.1 mas minha aplicação ainda está entrando em looop e da erro de direcionamento 400 ou 404..
    quando eu comento o redirecionamento consigo debugar o trecho..mas não saio disso me deem um help..ja ate peguei um projeto em branco para fazer apenas as rotas mas não saio disso..

    • @Tiosilvah
      @Tiosilvah Год назад

      pessoal consegui resolver com a configuração do SSL ou HTTPS no Wampserver e vou criar um vídeo mostrando como eu fiz...abç...

  • @aleffelipe9457
    @aleffelipe9457 4 года назад +2

    Ainda funciona? estou fazendo igual a aula mais estou tendo problemas as paginas 404 retornam ERR_TOO_MANY_REDIRECTS e não consigo utilizar as classes dos controladores mesmo definindo os namespace. Obrigado

    • @brunobmorais
      @brunobmorais 3 года назад +2

      conseguiu resolver?

    • @aleffelipe9457
      @aleffelipe9457 3 года назад +1

      @@brunobmorais Naum man

    • @_alexollie
      @_alexollie 3 года назад

      Tbm estou tendo a mesma dor de cabeça. Alguem Conseguiu resolver?

  • @RafaelMartinsYT_
    @RafaelMartinsYT_ 5 лет назад +3

    Qual a configuração para usar com nginx? Na documentação tem apenas o exemplo p/ apache.

  • @AdryanoReis10
    @AdryanoReis10 3 года назад

    Pessoal, com esse componente não consigo fazer, por exemplo, isso na url: /sistema?user=teste ? E aí pegar no controller o $_GET['user'] ? Tentando aqui, mas não estou conseguindo...

  • @zeniltonsti4047
    @zeniltonsti4047 4 года назад

    Robson o CoffeecodeRouter é possivel utilizar Middleware, ?

  • @wesleylourenco2
    @wesleylourenco2 3 года назад

    Show

  • @lorddrumond3937
    @lorddrumond3937 Год назад

    Robson, vc tem algum video que explica melhor a parte dos middlewares?

  • @agenciaebenezer
    @agenciaebenezer 5 лет назад

    Boa tarde! Show de bola Robson! Seria bom uma aula agora usando o Model para gerenciamento com banco de dados nessa mesma estrutura ai que voce mostrou! Seria possivel?

  • @KradusviKNyns
    @KradusviKNyns 5 лет назад +1

    aeewww eu estava esperando esse video =)

  • @GuiLuiz-VozEViolao
    @GuiLuiz-VozEViolao 3 года назад

    Você podia fazer um vídeo falando de fazer uma RESTful em Php com esse seu componente... Ainda estou apanhando pra receber dados via POST.

  • @JacksonTumba
    @JacksonTumba 4 года назад

    Robson o Coffeecode Router é possível utilizar Middleware?

  • @eliseucoffee3318
    @eliseucoffee3318 3 года назад +1

    Robson, como cria uma regra no htaccess para URL's amigáveis fora da rota? Tentei criar com [OR] ou [L,NC], refiz o [OR] e [L,R=301] mas nada, acaba caindo tudo em int(404), por exemplo /outra/path/arquivo.php, não é reconhecida.

    • @Tiosilvah
      @Tiosilvah Год назад

      tbm estou com esse problema e não estou achando a solução... poderia compartilhar?

  • @leandrooliveira5554
    @leandrooliveira5554 Год назад

    Lembra muito o express do node

  • @lucilton
    @lucilton 3 года назад

    Ola Boa Aula, como definir o primarykey quando ele tem varios campos no datalayer?

  • @Wildersk8
    @Wildersk8 5 лет назад

    Mestre, já que fez abstração de banco e rotas está faltando de template engine (embora eu gostaria de ver outros componentes antes) mas gostaria de ver outros templates engine para conhecer, pois só conheço o plates

  • @eronildomedeiros2483
    @eronildomedeiros2483 4 года назад

    Top

  • @antoniosergio6685
    @antoniosergio6685 4 года назад

    Fala Robson blz?!
    Estou acompanhando esta aula, mas na minha maquina nao esta chamando a url localhost/meu_projeto/contato. Apenas renderiza quando chama a index.php. Como posso resolver isto. Utilizo php7, apache24. valeu obg!

  • @f3rr4lloficial
    @f3rr4lloficial 2 года назад

    top

  • @othiago.fernando
    @othiago.fernando 3 года назад

    Olá. essa série me ajudou muito.. mudou meu mindset, e me introduziu para uma nova (e melhor) forma de desenvolvimento. Obrigado :)
    Notei que na sua máquina, você consegue rodar seus projetos com 'https'. Fazer isso me economizaria algumas linhas e algum tempo de configuração para rodar cada projeto.
    Como posso fazer isso rodar na minha máquina tb? ... Não sei se faz diferença, mas eu utilizo o Ubuntu

  • @webkovalski
    @webkovalski 5 лет назад

    Muito bom esses vídeos! Parabéns!!!!! Cria um chat estilo o facebook ai kkkkkkk

  • @antoniojunior1164
    @antoniojunior1164 4 года назад

    Professor essa biblioteca de rotas tem suporte a JSON?
    Estou usando o postman para passar um json, mas não esta chegando no controlador, estou usando um json_decode na variavel $data, mas da uma erro pedindo um parâmetro,
    é como se o json não estivesse chegando dentro do controlador.
    Alguem sabe oque pode estar acontecendo com a biblioteca router?

    • @EstevanRezende
      @EstevanRezende 4 года назад

      Adicionando o tratamento para que o json e querystring se incorpore ao $data do meu método eu fiz a seguinte alteração no arquivo Dispatch.php do pacote.
      encontre no arquivo a função "formSpoofing()" --> A LINHA ESTÁ ASSIM "protected function formSpoofing(): void"... e troque pelas três funções abaixo.
      /**
      * httpMethod form spoofing
      */
      protected function formSpoofing(): void
      {
      $post = filter_input_array(INPUT_POST, FILTER_DEFAULT);
      if (!empty($post['_method']) && in_array($post['_method'], ["PUT", "PATCH", "DELETE"])) {
      $this->httpMethod = $post['_method'];
      $this->data = $post;
      unset($this->data["_method"]);
      return;
      }
      if ($this->httpMethod == "GET") {
      $this->data['json'] = $this->json();
      $this->data['query'] = $this->queryString();
      unset($this->data["_method"]);
      return;
      }
      if ($this->httpMethod == "POST") {
      $this->data = filter_input_array(INPUT_POST, FILTER_DEFAULT);
      $this->data['json'] = $this->json();
      $this->data['query'] = $this->queryString();
      unset($this->data["_method"]);
      return;
      }
      if (in_array($this->httpMethod, ["PUT", "PATCH", "DELETE"]) && !empty($_SERVER['CONTENT_LENGTH'])) {
      parse_str(file_get_contents('php://input', false, null, 0, $_SERVER['CONTENT_LENGTH']), $putPatch);
      $this->data = $putPatch;
      $this->data['json'] = $this->json();
      $this->data['query'] = $this->queryString();
      unset($this->data["_method"]);
      return;
      }
      $this->data = [];
      return;
      }
      /**
      * json
      */
      private function json()
      {
      if (file_get_contents('php://input')) {
      $decode = (array) json_decode(file_get_contents('php://input'), true);
      $arr = (isset($decode) && count($decode) > 0) ? $decode : null;
      return $arr;
      }
      }
      /**
      * query string
      */
      private function queryString()
      {
      $query = filter_input(INPUT_SERVER, 'QUERY_STRING');
      parse_str($query, $parse);
      unset($parse["route"]);
      return $parse;
      }

  • @allefdouglas9693
    @allefdouglas9693 5 лет назад +1

    E se eu quiser inicializar meu servido com o servidor embutido do PHP?
    Usei o comando "php -S localhost:8000", e as rotas não funcionaram, a não ser a primeira. Sempre ficava na primeira.

    • @CarlosHenrique-vx3bm
      @CarlosHenrique-vx3bm 5 лет назад +2

      Então amigo, o servidor embutido do PHP não ler arquivos htacess, você tem que ter o apache instalado

    • @allefdouglas9693
      @allefdouglas9693 5 лет назад

      @@CarlosHenrique-vx3bm Show. Funcionou. Mas em uma requisição GET, como acesso aos dados vindos por Query Params? o $_GET não tem nada dentro, e a variavel $data também não.

    • @allefdouglas9693
      @allefdouglas9693 5 лет назад

      Criei essa função para pegar o valor de GET, mas gostaria de saber se a lib resolve isso pra mim mais facilmente.
      /** Retorna todos os valores do GET metodo **/
      $values = array();
      $uri = $_SERVER["REQUEST_URI"];
      $uriExploded = explode("?", $uri);
      if (sizeof($uriExploded) > 1) {
      $queryParams = $uriExploded[1];
      $fieldsAndValues = explode("&", $queryParams);
      foreach ($fieldsAndValues as $fieldAndValue) {
      $fieldAndValueExploded = explode("=", $fieldAndValue);
      $values[$fieldAndValueExploded[0]] = $fieldAndValueExploded[1];
      }
      }
      return $values;
      }

    • @CarlosHenrique-vx3bm
      @CarlosHenrique-vx3bm 5 лет назад

      @@allefdouglas9693 então amigo, passei por esse mesmo problema, não sei qual é sua necessidade, mas a minha eu resolvi assim
      Antes eu usava o slim framework e pegava as variáveis pela url, através do GET, algo como
      Url: www.mysite.com e chamava a url assim:
      www.mysite.com?var1=1&var2=2
      Pelo router, eu tive que modificar a
      Url, ficou assim
      Url: www.mysite.com/{var1}/{var2}
      E passo
      www.mysite.com/1/2,
      A diferença é que essas variáveis ficam em um array $data, mas se for o caso é só atribuir o $data ao $_GET no início do Controller

    • @alanwilliamduarte5617
      @alanwilliamduarte5617 5 лет назад

      @@CarlosHenrique-vx3bm só queria dizer obrigado por ter falado que o server embutido não funciona
      eu estou a mais de uma hora procurando na internet como resolver isso, tive o mesmo erro do ParzivalAD
      pelo menos agora eu sei que não tenho escolha a não ser colocar o projeto no htdocs
      mais uma vez, obrigado!

  • @CarlosHenrique-vx3bm
    @CarlosHenrique-vx3bm 5 лет назад

    Excelente vídeo aula, só não entendi como faço uma autenticação de usuários nesse componente, por exemplo, no laravel e no slim framework por exemplo, é possível adicionar middlewares de autenticação, usando o router eu tbm consigo fazer isso?

    • @CarlosHenrique-vx3bm
      @CarlosHenrique-vx3bm 5 лет назад

      @@robsonvleite Entendi, tinha dado uma pesquisada, e já imaginava que seria algo parecido, muito obrigado pelo esclarecimento.

  • @cleytonfernando2406
    @cleytonfernando2406 4 года назад

    Muito bom o vídeo. Usando essas rotas e o datalayer, consigo eliminar o uso de um framwork?

  • @fatosdefato
    @fatosdefato 5 лет назад

    entao devo fazer desta forma para todos crio o views home blog e no metodo que é chamado eu do um require para chamalo? (basicamente)

  • @joseeustaquiosantos9617
    @joseeustaquiosantos9617 5 лет назад +1

    Boas noites!!!
    Como sempre, mais um excelente vídeo. Porém estou no mesmo barco que um companheiro ai dos comentários: não sei se insisto, ou se desisto. Não consigo fazer estes redirecionamentos funcionarem. Pelo que estou entendendo o meu .htaccess não está fazendo seu papel. Quando acesso a base, vou para a home tranquilamente. Mas quando tento o primeiro exemplo que é "/contato/" só recebo msg de erro 404 do browser. O router parece não estar sendo executado.

    •  5 лет назад +1

      veja se o modulo MOD_REWRITE está habilitado no apache

    • @joseeustaquiosantos9617
      @joseeustaquiosantos9617 5 лет назад +2

      @ Valeu! Obrigado. Já habilitei. E este erro já está eliminado.
      AGora estou com outros.

    •  5 лет назад

      @@joseeustaquiosantos9617 qualquer dúvida se eu puder ajudar, estamos as ordens.

  • @raphaanjos690
    @raphaanjos690 5 лет назад

    PhpJava, show!

  • @studioragenciademarketing1590
    @studioragenciademarketing1590 5 лет назад

    qual o componente q vc utiliza Robson para renderizar template? eu utilizo RanTPL , tenho algumas dificuldade com ele , mais por não conhecer outro não sei qual o melhor

  • @fernandost.7733
    @fernandost.7733 5 лет назад +3

    Quando tento usar o controller como no video simplesmente não funciona, retorna o error 400 alguem sabe se ainda funciona este coffeecode ?
    Estou com o PHP 7.2 e o coffeecode 1.07
    HTACCEESS
    RewriteEngine On
    Options All -Indexes
    # ROUTER WWW Redirect.
    #RewriteCond %{HTTP_HOST} !^www\. [NC]
    #RewriteRule ^ www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    # ROUTER HTTPS Redirect
    #RewriteCond %{HTTP:X-Forwarded-Proto} !https
    #RewriteCond %{HTTPS} off
    #RewriteRule ^ %{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    # ROUTER URL Rewrite
    RewriteCond %{SCRIPT_FILENAME} !-f
    RewriteCond %{SCRIPT_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?route=/$1 [L,QSA]
    INDEX
    require __DIR__ . "/vendor/autoload.php";
    use CoffeeCode\Router\Router;
    $router = new Router("localhost/raiz");
    $router->namespace("App\Controllers");
    $router->group(null);
    $router->get("/", "LoginController:login");
    $router->dispatch();
    if ($router->error()) {
    var_dump($router->error());
    }
    CONTROLLER

    • @Robson_C_Tomas
      @Robson_C_Tomas 4 года назад +1

      Conseguiu resolver amigo? Desenvolvi muita coisa local e na hora que fui upar para o server só dá erro 400.

    • @Dinookys
      @Dinookys 4 года назад

      Vc colocou esse namespace dentro do arquivo composer.json e rodou o composer update novamente?
      Ficaria algo do tipo:
      ---------------------------------
      "autoload": {
      "psr-4" : {
      "App\\" : "coloque/o/caminho/relativo/da/pasta/aqui"
      }
      }
      Obs.: Não sei se é útil para vc mas deve ser para alguém no futuro.

    • @diogolinsdrack
      @diogolinsdrack 4 года назад

      Eu desenvolvi um site usando os métodos do Robson e só da erro 400 de Bad Request. Meu arquivo no meu PC está funcionando tudo certo e eu criei duas variáveis uma URL_TESTE e outra URL_BASE na teste coloco o url do meu pc e na base o domínio da onde tá hospedado. Meu Composer tá ok, fiz testes mas não vai com naaada! Alguém ai sabe algo?

    • @lucasarend7164
      @lucasarend7164 4 года назад

      @@Dinookys Tava com o mesmo problema, porem o meu tem esses arquivos no auto load do php, mas ele continua dando erro 400 em tudo

  • @danielpio5104
    @danielpio5104 4 года назад

    estou usando o Twig pra desenvolver meu View, na hora de passar parametros no href tipo se eu usar /{id} blz funciona de boa mas se eu precisar usar /{id}/{id2} ai ferro não faço ideia de como usar o 2° parametro a linha ficou assim : alguem pode me ajudar como resolver isso ???

  • @igoralvescarvalho4908
    @igoralvescarvalho4908 5 лет назад

    Muito bom trabalhar com PHP com arquitetura MVC, mas me veio uma dúvida muito grande, desde do início dos meus aprendizados em PHP eu semprei utilizei a arquitetura MVC em meus projetos, como eu faria caso eu fosse desenvolver um projeto bem simples? Nesse caso, o uso de MVC seria necessário? Caso não fosse necessário como eu faria as estruturas das pastas?

  • @fatosdefato
    @fatosdefato 5 лет назад

    deixa eu ver se e entendi
    a grosso modo podemos dizer que as urls ("amigáveis") são métodos de uma classe que são setados no index que pega o que esta escrito na própria URL ? mais como faço para por exemplo passar este caminho em um menu ?
    eu normalmente não me familiarizei com classe não consigo ver a tão dita "reaproveitação de código" mais entendo a sua necessidade talvez seja porque não devo mesmo ser programador e devo procura algo diferente mais gosto deste meio entao segue o baile mais fiquei com esta duvida porque estou tao acostumado ao Home
    que não consigo me desprender entende ?

  • @paulinhosupriano
    @paulinhosupriano 5 лет назад

    Fiquei com uma dúvida, como faço para efetuar um redirect usando uma $handler pelo Controller criado?
    Porque no caso, a estrutura do seu MVC tem um $classRouter->redirect($route); mas não funciona usando uma classe $handler, tentei fazer um Encapsulamento e não deu certo, então fiz uma função adicional usando uma outra classe com um extends para utilizar uma função redirect criada. Como faço para usar a própria classe Router com um $handler e um redirect?

  • @alanwilliamduarte5617
    @alanwilliamduarte5617 5 лет назад +2

    Infelizmente eu não consigo fazer o router funcionar de jeito nenhum... por algum motivo, não entra em nenhuma página além da home, nem a pagina de erro nem nenhuma outra. Eu acho que talvez seja pelo fato que estou executando o comando "php -S localhost:8000" minha única teoria é que não é compatível com esse tipo de url...
    Tem algum lugar que eu possa procurar saber sobre isso ?
    Mesmo assim acho seus vídeos super didáticos, e quero terminar esse PHP tips escrevendo tudo!

    • @alanwilliamduarte5617
      @alanwilliamduarte5617 5 лет назад +3

      achei a "solução": basicamente esse servidor embutido do PHP não lê o arquivo .htaccess , então não tem como usar ele. Basicamente eu tive que colocar o arquivo na pasta htdocs igual ele fez, aí funcionou tudo certinho
      não sei se vai acontecer com alguém, mas deixo aí como eu resolvi

  • @fatosdefato
    @fatosdefato 5 лет назад

    este tratamento de erros tb pode see cria uma pagina para cada erro

  • @RodrigoFGLima
    @RodrigoFGLima 5 лет назад +3

    Robson, trabalhando com rotas, estaria iniciando uma url amigável?

  • @igoralvescarvalho4908
    @igoralvescarvalho4908 5 лет назад

    1 - Qual seria o componente responsável por retornar uma mensagem de erro para a view? Eu dei uma olhada no componente CoffeeCode/Router e no template League/Plates, ambos tem a opção de passar dados para a view, porém fiquei na dúvida, acredito que o certo seria com o Router utilizando o $this->router->redirect("name_rota", ["fail" => "mensagem"]), entretanto ao utilizar o método redirect do CoffeCode/Router, nada é retornado para view.
    2 - No caso de um middleware de auth, seria possível implementar com o componente coffeeCode/Router? Eu vi uma pergunta dessa em um dos vídeos só não estou lembrado qual, porém não conseguir ver a resposta, por algum motivo em algumas perguntas não consigo ver as respostas dadas por vocês da UpInside.

  • @alyssonmarcos2066
    @alyssonmarcos2066 2 года назад

    como usar o middleware ?

    • @robsonvleite
      @robsonvleite  2 года назад

      $router->get("/edit/{id}", "Coffee:edit", middleware: \Http\Guest::class);

  • @MrSilvioSouza
    @MrSilvioSouza 4 года назад

    Fala DEV. Cara, uso Apache 24 + PHP 7.3. Simplesmente o Router só funciona o ROOT do projeto $router->get("/"..., acredito que pela existência do index.php, porém, qualquer outra rota implementada, $router->get("/contato"...) ou $router->get("/ops/...")..., não funciona, só dá "Not Found". Fiz tudo certinho, várias vezes e nada. O que será isso !?!?!?!? Tô pensando em instalar o XAMP... Será que resolve !?!?!?

    • @LucasTorres-nz7ki
      @LucasTorres-nz7ki 2 года назад +1

      Silvio, vc conseguiu resolver esse problema ? ...
      Eu também fiz o código igual ao q o Robson fez. Mas, o meu também fica aparecendo o erro de "Not Found"! ...
      Se vc conseguiu resolver, me conta aí oque vc fez, por favor.
      Obrigado!

    • @Tiosilvah
      @Tiosilvah Год назад

      @@LucasTorres-nz7ki e @Silvio Souza vocês conseguiram resolver esse problema no wampserv? eu to nessa saga tem uns 8 dias e não consigo achar um post para tal....se puderem me deem um help por aq..vlw..

  • @rafaelslopess
    @rafaelslopess 4 года назад

    Meu redirecionamento só funciona se eu coloco no localhost. Se tento configurar pra usar localhost:8080 e rodo o php -S localhost:8080 o projeto só fica no index. Alguém sabe como resolver?
    Obs.: Uso Ubuntu 18.04 e já habilitei o htaccess no apache.

    • @andrefurlan
      @andrefurlan 3 года назад

      Edita a configuração do apache:
      ↳sudo vim /etc/apache2/sites-available/000-default.conf
      E coloca isso:
      Options Indexes FollowSymLinks MultiViews
      AllowOverride All
      Order allow,deny
      allow from all
      ServerAdmin webmaster@localhost
      DocumentRoot /var/www
      ErrorLog ${APACHE_LOG_DIR}/error.log
      CustomLog ${APACHE_LOG_DIR}/access.log combined

  • @fatosdefato
    @fatosdefato 5 лет назад

    se eu usar atrapalha ou muda algo importante ?

  • @brunobmorais
    @brunobmorais 3 года назад +1

    Estou com um problema de ERR_TOO_MANY_REDIRECTS a rota fica sempre direcionada para o erro e fica em loop infinito. Já vi todos os comentários e não encontrei a solução. Se alguém souber a solução.

    • @lucasbueno4262
      @lucasbueno4262 3 года назад +1

      Isso também está acontecendo cmg, estou o dia inteiro tentando e não acho uma solução!!!!!!

    • @brunobmorais
      @brunobmorais 3 года назад +2

      @@lucasbueno4262 pelo que eu entendi o problema e no htaccess.

  • @LuizHenrique-wr7ou
    @LuizHenrique-wr7ou 5 лет назад +2

    Robson estou com um probleminha!!!
    Quando eu coloco $router->redirect("/ooops/{$router->error()}"); aparece a seguinte mensagem no Google Chorme!
    Esta página não está funcionando
    Redirecionamento em excesso por localhost
    O que seria???

    • @andrebrito9099
      @andrebrito9099 5 лет назад

      No meu deu esse erro também. Antes de você executar o $router->redirect você executa o router->group. Ex: $router->group("opss");
      $router->get("/{errcode}", function($data) {
      echo "Erro {$data['errcode']}";
      var_dump($data);
      });
      $router->dispatch();
      if ($router->error()) {
      $router->redirect("/opss/{$router->error()}");
      }

    • @MagnoKellyFelipe
      @MagnoKellyFelipe 4 года назад +1

      @@andrebrito9099 Eu também estava passando por isso. O código está certinho, porem a minha falha estava no $router = new Router("CONF_URL_TEST"); O certo é colocar sem aspas desse jeito $router = new Router(CONF_URL_TEST); Feito isso vai funcionar perfeitamente. Segue o baile..kkkkk

  • @JuniorSilva-kd1yj
    @JuniorSilva-kd1yj 4 года назад

    fui instalar o componente agora, ate baixa, mas quando abro a pasta do componente na vendor a pasta esta vazia

  • @MrTedtage
    @MrTedtage 4 года назад

    Não sei o que está acontecendo com o meu código, pois não aceita nada que não seja a rota "/".
    "/contact" não funciona e nem o redirecionamento ao tratar o erro. Já refiz o código várias vezes, os métodos foram todos copiados do home, só trocando os nomes, etc.

    • @MrTedtage
      @MrTedtage 4 года назад

      Opaaa! Era problema no .htaccess e na constante URL_BASE. Estou fazendo o curso usando o index dentro da pasta public. O único problema agora é que quando captura um erro de rota, aparece a pasta public na url. As demais rotas estão funcionando de boa.

  • @andrericardoribeiroseixasg3181
    @andrericardoribeiroseixasg3181 4 года назад

    Boa noite amigo, é possivel criar rotas com php puro sem fremework ou composer?

  • @Oifilipemeia
    @Oifilipemeia 4 года назад

    Muito bom suas aulas. Mas por favor seria bom criar uma aula com um projeto real e completo. Nem que for uma agenda, mas que use todos os tips ensinados aqui. Deus te abençoe Robson!

  • @EU501733
    @EU501733 5 лет назад +2

    Excelente vídeo ! Porém fiquei com uma dúvida ; Se insisto mais ou desisto de vez, rs .

    • @Wildersk8
      @Wildersk8 5 лет назад

      Parece confuso mas em menos de 5min você cria uma rota um controlador e uma view... depois só criar a tabela e usar o DataLayer por exemplo. Entender MVC foi o divisor de águas para mim

  • @mentesquenaoparam
    @mentesquenaoparam 5 лет назад +1

    Bom dia, Boa tarde ou Boa noite, estava testando alguns componentes seu e tbm algumas estrutura me deparei com o seguinte erro. alias não é um erro apenas um informe. errcode Exemplo se nao for algum dos erros listados ele tbm imprime exemplo 404 Normal mas se eu informar obs (testetstetstestetstetstetstetstetstetste) ele imprime na tela.

    • @rodrigolemes5406
      @rodrigolemes5406 4 года назад +1

      Eae, de boa? Não sei se vc já achou uma solução, mas eu resolvi esse "bug" desse jeito :
      if (!is_numeric($data["errcode"])) {
      $data["errcode"] = "404";
      }
      echo "Erro {$data["errcode"]}";
      var_dump($data);

  • @edgarqf
    @edgarqf 4 года назад +2

    Boa tarde Robson, falar que seu método de ensino é muito bom seria "chover no molhado". A única coisa que para mim não funcionou (devido, talvez; a questões de Configurações do Apache (.htaccess) ou do próprio Chrome (estou utilizando http e não https) é o Redirecionamento, que embora eu; esteja seguindo o Script "fio a pavio" ainda está causando ERRO ( ERR_TOO_MANY_REDIRECTS - está fazendo Loops Infinitos entre o Index.php e o Endereço Virtual ooops) e, ainda; NÃO consegui Contornar. Seus videos #phptips, que; são ótimos para que eu retome os conhecimentos em PHP (sou Cientista da Computação e trabalho com Progress 4GL, mas; esteu "coçando" para Empreender) assim que concluí-los, irei fazer minha inscrição ou no Curso ( Full Stack PHP Developer) porque esta me parece ser uma Pequena amostragem do que está Incluso no mesmo e sabemos que "Treino e Treino e Jogo é Jogo". Abraço.

    • @GuilhermeLopesSousaPinto-le8ey
      @GuilhermeLopesSousaPinto-le8ey 4 года назад

      Conseguiu resolver esse problema? estou com o mesmo. valeu

    • @brunobmorais
      @brunobmorais 3 года назад

      conseguiu resolver o problema?

    • @brunobmorais
      @brunobmorais 3 года назад

      @@GuilhermeLopesSousaPinto-le8ey conseguiu resolver?

    • @GuilhermeLopesSousaPinto-le8ey
      @GuilhermeLopesSousaPinto-le8ey 3 года назад

      @@brunobmorais consegui mas não lembro como, ja faz tempo, pode ser algo na configuração do apache.

    • @Tiosilvah
      @Tiosilvah Год назад

      @@brunobmorais voce conseguiu resolver esse tipo de problema?

  • @ryanlopes107
    @ryanlopes107 4 года назад +1

    Alguém pode me ajudar o Router não aparece no meu simplesmente não existe a classe router oque fazer?

  • @PauloHenrique-xg4bx
    @PauloHenrique-xg4bx 5 лет назад

    É possivel no método Web:contact eu chamar um componente em React? por exemplo chamar um arquivo contact.php e esse arquivo chamar um arquivo contact.js que renderiza um componente em React

  • @IndustriasVrau
    @IndustriasVrau Год назад

    Não consegui implementar essa solução no meu projeto

  • @danestrela
    @danestrela 5 лет назад

    Opa, eu fiz um pequeno sistema e coloquei num host. O router não redirecionou para as classes. A versão do php está em 7.3. Só tenho como retorno uma página em branco, apesar do router ter o dispatch de boa e funcionando localmente, no servidor não funciona. Tem alguma configuração específica pra fazer ele funcionar?

    • @danestrela
      @danestrela 5 лет назад +1

      Totalmente! Para quem tiver dúvida, tomem cuidado com a escrita das classes dentro da chamada do router, atentem principalmente as letras maiusculas e minúsculas. E qualquer dúvida, me ponho a disposição aqui também 🤗

    • @AildoTorres
      @AildoTorres 5 лет назад +1

      @@danestrela Na hospedagem isso poderia ser o motivador pra ficar dando erro 400 até dar many redirects? Estou há uns 3 dias quebrando a cabeça com isso. Localmente funciona perfeitamente

    • @danestrela
      @danestrela 5 лет назад +1

      @@AildoTorres ja tentou ver se tem alguma configuração do php.ini faltando? Se não, a versão do php está correta?

    • @AildoTorres
      @AildoTorres 5 лет назад

      @@danestrela A versão do PHP estava correta. Tinha um erro na constante do endereço do site que arrumei, mas ainda está com o problema. O que poderia ser no PHP.ini? Porque realmente não mudei nada no arquivo que a hospedagem fornece

    • @danestrela
      @danestrela 5 лет назад

      @@AildoTorres Seria melhor olhar o código para saber, entende? De qualquer maneira, tente ver se o modulo mod_rewrite está ativo do apache, também verifica se o teu htaccess está configurado corretamente, conforme a documentação aqui: packagist.org/packages/coffeecode/router

  • @ruasrr
    @ruasrr 2 года назад

    CoffeeCode/Router não funciona no NGINX.

  • @evertonlima4118
    @evertonlima4118 2 года назад +1

    Alguém consegue me salvar? Até o Call Back funciona bem, mas quando implemento um simples método de controller, da o erro 400. Alguém já passou por isso?

    • @maylonsarot
      @maylonsarot 2 месяца назад

      estou na mesma, no localhost está tudo ok, na vps não funciona

  • @Robson_C_Tomas
    @Robson_C_Tomas 4 года назад

    Alguém poderia me dar um help? Fiz uma aplicação com o que aprendi tanto com esse vídeo como com a série código aberto que roda beleza localmente.
    Quando tento rodar no servidor só dá erro 400 ERR_TOO_MANY_REDIRECTS. Já fiz update do autoload do composer no servidor, já revisei todo o codigo e nada. Estou ficando louco já com isso.

    • @Robson_C_Tomas
      @Robson_C_Tomas 4 года назад +1

      É difícil aceitar que na sua máquina está tudo de boas e quando sobe pro server dá zica.
      Vou enumerar o que descobri para dar o caminho das pedras para alguém que possa ter as mesmas dificuldades que eu tive:
      * Primeiro, tem que saber o básico do composer e se tratando disso todo conhecimento ainda é pouco.
      * Segundo, o namespace do componente Router tem que estar em letra minúscula, pois é mais pra um caminho de arquivo e não um namespace de arquivo/classe.
      * Terceiro, os namespaces de classes controller e model tem que estar em letra maiúscula (não sei se isso é necessário, mas pra mim funcionou).
      *Quarto, rodar os comandos:
      - php composer.phar update
      - php composer.phar dump-autoload -o

    • @MagnoKellyFelipe
      @MagnoKellyFelipe 4 года назад

      @@Robson_C_Tomas ​ Veja se implementou o namespace corretamente $router->namespace("Source\App"); eu tbm tive esse problema.... eu estava usando a barra ao contrário...kkkkkk

  • @carlospontes2629
    @carlospontes2629 5 лет назад

    Bacana teu vídeo véio.
    😉

  • @rafaelluqueta2411
    @rafaelluqueta2411 4 года назад +1

    Oiii Pessoal estou tendo problemas com o router, apos fazer o teste com contato na url dessa forma localhost/cursos/phptips/ep04/contato deveria gerar o erro, mas ele redireciona para o erro do browser "Objeto não encontrado!" ( prnt.sc/r6bnd5), ai depois inseri o contato na index pra ver se funcionava e tmb continua com o erro do browser, ate então o router so funciona na pasta raiz: "/", fora isso as rotas não funciona de jeito nenhum alguém passo por esse problema pode dar uma dica

  • @Robson_C_Tomas
    @Robson_C_Tomas 5 лет назад

    Alguém poderia me dar uma luz de como trabalhar um sistema de login implementado usando esse router? Redireciono para o arquivo onde está as rotas depois de logar ou tem como implementar isso junto com as rotas?

  • @carcleo
    @carcleo 5 лет назад

    Gostaria de saber onde é que ele captura pela primeira vez o valor da URL e para fazer um strtolower e deixar tudo minuscula.
    Procurei muito e não encontrei!

    • @alanwilliamduarte5617
      @alanwilliamduarte5617 5 лет назад

      pelo pouco que eu li, isso não é possível. Você poderia colocar uma rota pra letras maiúsculas e outra pra letras minúsculas, mas parece que isso é ruim porque atrapalha o SEO do site
      anyway, sei que perguntou isso a 3+ meses, mas deixo aqui minha resposta pra futuras referencias de outras pessoas!

  • @f3rr4lloficial
    @f3rr4lloficial 2 года назад

    com mais alguém ai não deu certo em 2022 kkk tipo ele não encontra meu controller agora se eu faço igual no laravel ele encontra porém não funciona

    • @tiagoalmeida1501
      @tiagoalmeida1501 2 года назад +1

      Dá um require do seu controller no index.php
      require __DIR__ ."/App/Web.php"; (Depende do caminho que vc estruturou no seu projeto).
      Provavelmente seu Diretório "App" não está dentro de "source"

    • @f3rr4lloficial
      @f3rr4lloficial 2 года назад

      @@tiagoalmeida1501 vlw man vou testar mais qu acabei fazendo puro

  • @lorddrumond3937
    @lorddrumond3937 4 года назад

    Como coloco um parâmetro na rota como opcional?

  • @andrefurlan
    @andrefurlan 3 года назад +1

    Se não estiver redirecionando faça isso:
    Edita a configuração do apache:
    ↳sudo vim /etc/apache2/sites-available/000-default.conf
    E coloca isso:
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    O segredo é o "AllowOverride All"

  • @Robson_C_Tomas
    @Robson_C_Tomas 4 года назад

    Alguém conseguiu usar esse router com ckeditor, summernote ou outro similar? As rotas bloqueando todos os acessos tá foda. Perdi 2 dias aqui e nada. Um help por favor!!!

  • @eliaspbareia
    @eliaspbareia 5 лет назад

    Tive um problema com router. Num exemplo hipotético, se eu digitar ''www.teste.com.br/error", serei redirecionado só que o link é repetido várias vezes (www.teste.com.br/ops) e só o link final, na repetição, que contém o erro 404, por exemplo. Fiz conforme a documentação e o vídeo.

    • @Tiosilvah
      @Tiosilvah Год назад

      Conseguiu resolver? eu estou com esse mesmo problema a uns 6 dias;;...me help

  • @claudsonpaulino
    @claudsonpaulino 5 лет назад

    O router fica disparando erro 400, só para quando faço include manualmente da classe, oq não acontece no video, seria algum problema?

    • @claudsonpaulino
      @claudsonpaulino 5 лет назад

      era só falta de atenção com o composer.json

    • @AildoTorres
      @AildoTorres 5 лет назад +1

      @@claudsonpaulino O que estava faltando no seu composer.json? Eu fiz um pequeno sistema localmente usando o que foi ensinado e foi tudo ok, mas mandando para a hospedagem fica dando erro 400 e redirecionando até dar erro por muitos redirecionamentos

    • @claudsonpaulino
      @claudsonpaulino 5 лет назад +1

      @@AildoTorres eu esqueci de configurar pra fazer autoload do Config.php ent o banco de dados dava erro e por isso n funcionava, tbem n funcionava pra usar os package, ent é só ver a aula 1 direitinho

    • @AildoTorres
      @AildoTorres 5 лет назад +1

      @@claudsonpaulino Entendi. Essa minha parte está OK. Vou continuar tentando. Estou revendo os vídeos pra tentar achar onde pode estar o problema

    • @claudsonpaulino
      @claudsonpaulino 5 лет назад +1

      @@AildoTorres erro 400 pode ser no htaccess tbem

  • @fatosdefato
    @fatosdefato 5 лет назад

    bom dia eu nao estava conseguindo enviar este comentario na aula passada entao vim nessa msm
    seguinte, eu nao estou coneguindo enviar nenhum tipo de email nenhum dos 3 modelos deram certo todos geraram este erro :
    Erro - Erro de SMTP: Não foi possível conectar ao servidor SMTP.
    sabe dizer por que ?

    • @fatosdefato
      @fatosdefato 5 лет назад

      @@robsonvleite poxa muito obrigado, realmente eu tenho mesmo muita dificuldade pq não gosto de classes mais sei da sua necessidade mais minha condição infelizmente nao me permite pq meus rendimentos são inferiores ao minimo e tenho família então faço programação mais por hobi e já fiz um projeto para um comercio local combinamos de ele me pagar 50 reais por mês já faz um ano que não recebo e como é um amigo primeiro projeto fico meio sem jeito aperta ele
      e não tenho grana para poder pagar um curso profi entende mas de qualquer forma muito obrigado fico muito feliz pela atenção de vcs