PHP For Beginners, Ep 15 - Make a PHP Router

  Рет қаралды 60,902

Laracasts

Laracasts

Күн бұрын

Пікірлер
@sifr-in
@sifr-in Жыл бұрын
i directly came to this episode. i was searching for "understanding routes" u compelled me to see "previous videos also" nice one.👍
@yamix-tr
@yamix-tr 3 ай бұрын
... TBH, i have never seen someone teach a language basics with modern dev mindset until now, definitely the best teacher
@rafaelxrafael
@rafaelxrafael Жыл бұрын
what i like is that you learn how to think like a programmer, and not only about php, althought is php for beginners. Thanks
@scott-richardson
@scott-richardson 5 ай бұрын
Been writing PHP apps and websites for what feels like 20 years and I'm LOVING this series.
@nick8292
@nick8292 Жыл бұрын
The pace of this course and the way it's delivered is perfect for me -- and many others it seems!
@garyriehle239
@garyriehle239 Жыл бұрын
Jeffrey, I am a hige fan, lifetime member of Laracasts and evangelist of Laravel & Laracasts. That fake typing at the beginning almost had me spit beer on my laptop. Hahahahaha. Its awesoem how many experienced PHP guys are watching these videos here and there. Including me.
@MocSomething
@MocSomething 2 жыл бұрын
I'm really loving this series. I work with PHP and Javascript in my job, and I've learned everything I know about these languages just through experience and google. The basics I'm learning here is really refreshing and it's really helping me in my job, so thank you! To be honest, before you got to parse_url function call, I thought you'd have to pull out preg_match() and thought "ooh, this is moving quickly!" haha. Nice to see the PHP devs already thought of that! Keep up the great content!
@SXsoft99
@SXsoft99 2 жыл бұрын
i was thinking he would do an explode :))
@marilynyballa809
@marilynyballa809 2 жыл бұрын
HOLYY SHIITTT I LOVE YOU ❤❤❤ I'VE BEEN SEARCHING AROUND THE INTERNET FOR 5 HOURS AND THEN NOW IT'S OVER FINALLY I LOVE YOU MAAN
@kladdelic
@kladdelic 2 жыл бұрын
I love this series! A few years ago I had really trouble with understanding routing. Your first PHP series made it so clear, it was like a sudden awakening. The other thing I enjoy here is that you try different concepts. Your first series was so object oriented, and now you have a more functional approach. Will you refactor to classes where appropiate? ;) Also, two years ago I was about to quit web developement. But your dedication made me resist that. Your one of my favorite teachers, and also guitarist like me. All the best to you. :)
@rosswilliamson4491
@rosswilliamson4491 Жыл бұрын
Agreed how much better is his new stuff in the past he was to fast but his new series he explains it so much better and he charges 12 pound a month you can't go wrong
@rosswilliamson4491
@rosswilliamson4491 Жыл бұрын
This man will get me a job his teaching style is second to nobody
@rpbale
@rpbale 10 ай бұрын
Super straight forward. Nice job
@hnni5149
@hnni5149 Жыл бұрын
I really watched it twice and now the third time. Exactly as you said :)
@DougLopes
@DougLopes 2 жыл бұрын
Nice and clean as always... I was runing some tests and this behavior when you access some address that doesn't exists only works in php server. With wamp and laragon you get 404 error probably because of apache and the index.php is never called. So if you're having this issue, try just run the tutorial codes like Jeffrey in a simple "php -S localhost" and it should work.
@Bishop_Six
@Bishop_Six 2 жыл бұрын
Thank you for clearing this up for me, i had the same 404 problem earlier on wamp server. but i have one question, i'm running a laravel app on WAMP and it works, i'm guessing laravel uses the same single point of entry routing system (as jeffrey did in this video) but much more advanced. if thats the case why does laravel work on WAMP and the tutorial codes in this video breaks on WAMP?
@DougLopes
@DougLopes 2 жыл бұрын
@@Bishop_Six thats because laravel has a .htaccess on the public directory, and it make the apache redirect all requests to index.php entry
@jediampm
@jediampm 2 жыл бұрын
@@DougLopes And also mod rewrite is needed to be active, to be able to read .htaccess files, which usually is active in sharing hosting providers and some software solutions like wamp, mamp or xamp, but not in php base containers and hosting providers by using Virtual Private Server (VPS) plan.
@Bishop_Six
@Bishop_Six 2 жыл бұрын
@@DougLopes once again thank u very much. Now I can sleep in peace
@Bishop_Six
@Bishop_Six 2 жыл бұрын
@@jediampm thanks u very much
@BecomeAWebDev
@BecomeAWebDev Жыл бұрын
The thumbnails for many of your videos look like you are starting a social club, or dating site. Just a heads up, blast from the past sort of comment ... you're teaching methods otherwise, once the video begins, are mainly spot-on
@MrTheRocketmaster
@MrTheRocketmaster 7 ай бұрын
Young Michael Keaton is teaching some good PHP. Nice!
@abelmarkos5753
@abelmarkos5753 2 жыл бұрын
Very nice jeff
@jakubfrei3757
@jakubfrei3757 Жыл бұрын
Up until this point, you were teaching us MVC model without even metioning it, its just so natural.....i really love your style of teaching things, thank you !
@cristhianjhlcom
@cristhianjhlcom 2 жыл бұрын
Great content by the team! 🤗🤗
@devKazuto
@devKazuto 2 жыл бұрын
One thing you could have done as well is to move the `parse_url` call to the `routeToController` function. This way you would only need to pass the routes as a parameter, because `$uri` is only used in the function.
@Laracastsofficial
@Laracastsofficial 2 жыл бұрын
We’re not done in that file, but it’s more flexible if we instead pass in the uri.
@10029759
@10029759 11 ай бұрын
@@Laracastsofficial are you going to cover adding variables to the URL?
@deepakkandpal3497
@deepakkandpal3497 2 жыл бұрын
Thankyou for this episode, now I am clear how does those routers work
@tito-ace
@tito-ace Жыл бұрын
now i appreciate php thank you..
@piyushadhikari1039
@piyushadhikari1039 2 жыл бұрын
I'm really stuck in this episode .. Whenever I click on About or Contact I am seeing this (The requested URL was not found on this server) error plz help.... I have done everything correctly,upto this point P.S. I'm using XAMPP
@hagarosama5724
@hagarosama5724 Жыл бұрын
I am stuck too, have you solved it?
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
same here. I noticed that I can't update the uri like he did at 2:15. if you add something after 'localhost:8888/' you will get 'Not Found The requested URL /tuna was not found on this server.' but for some reason he was able to do that just fine. I am gonna try different things like googling, changing the browser or use something other than mamp.
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
I did things a bit differently because of the 'root level' thing. I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@pedrowantuirpaixao1041
@pedrowantuirpaixao1041 2 ай бұрын
i´m also stuck bro, could you solve it?
@janupasilva
@janupasilva 2 жыл бұрын
Yo this is damn good man, i really feel bad why i haven't met this channel before
@jakariya.h
@jakariya.h 2 жыл бұрын
If this playlist had not ended
@peculiarprecious9814
@peculiarprecious9814 2 жыл бұрын
I love this video. Please kindly share the video of the functions.php
@felipepena4081
@felipepena4081 Жыл бұрын
Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config
@wujkudobrarada
@wujkudobrarada 2 жыл бұрын
You are doing an amazing job. I would like to know if you share your editor's visual settings somewhere, they are great. 😍
@webixr
@webixr 11 ай бұрын
this is phpstorm ide?
@fulgorth2661
@fulgorth2661 8 ай бұрын
Hi Jeff, I know thiss serie is now quite a time done and I don't know if you even read this comment. But I'm no searching around for quite a long time and indeed for me who never worked in IT but wa alway interested in doing this as a hobby I am doing bad in debugging in PHP/HTML/CSS/JS... I'm more used to C, C++, Visual Basic even Assembler. It would be great if you would make a eries that explicitly teaches how to debug in Web Development! I love your little function dd() just in the beginning of this series and that i exactly what I mean! In this lesson I kinda miss a sentence about the problem when putting the require into a function: Every variable needed in any content would have to be forwarded to the function... That makes it obligatory (at least for me) to change thinking from other languages.
@and-why
@and-why 5 ай бұрын
@1:150 ish... how come your server did not respond with a 404 when you entered that jibberish url? how come all request are routed to index.php at this point? is that typical for your local server?
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@lahoucineoldakdim7778
@lahoucineoldakdim7778 2 жыл бұрын
Great tuto. I have a question about different between callable Of Middleware(filters) and callable of Event Listener(hooks) Are boat the same if we use the call_user_func();
@abdullahal-kaf5364
@abdullahal-kaf5364 Жыл бұрын
I did everything you did in this series, but when I did this router the home page works good ,but when I click on the other pages the browser gives me 404, idk why! 😩
@venom_21332
@venom_21332 Жыл бұрын
Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA]
@badal8111
@badal8111 Жыл бұрын
@@venom_21332​ Can You explain why and how this works?
@ChatBook_
@ChatBook_ Жыл бұрын
@@venom_21332 THANK YOU!!!!!!!!!!!!!!!!!!!! You saved my life
@hamzah5661
@hamzah5661 8 ай бұрын
@@badal8111 This is a file that is read by the Apache server. This is used to specify certain rules that the Apache server should follow when routing. Essentially, we are saying that if the route is not referring to a file or a directory in the project, then it should refer to index.php. # This is a file that is read by the Apache server. This is used to specify certain rules that the Apache server should follow when routing. Essentially, we are saying that if the route is not referring to a file nor a directory in the project, then it should refer to index.php RewriteEngine On # Exclude existing files from the rewrite rule RewriteCond %{REQUEST_FILENAME} !-f # If previous condition is true, then exclude existing directories from the rewrite rule RewriteCond %{REQUEST_FILENAME} !-d # If previous condition is true, then redirect all other requests to index.php RewriteRule ^ index.php [QSA,L]
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
@@venom_21332 Thanks a lot. I did things a bit differently because of the 'root level' thing. I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@SXsoft99
@SXsoft99 2 жыл бұрын
cant wait for routes that have parameters in them, even if people tend to have the parameters like "id=1" as a query param
@SKRUBL0RD
@SKRUBL0RD 2 жыл бұрын
pffft, show me how to make a PHP interpreter in PHP
@sonoftroy8572
@sonoftroy8572 9 ай бұрын
I know this is such a late question to ask but I’ll give it a try with the hopes of a follow up answer. I noticed in this video when you clicked the reload button in the browser and changed the URL-Path, all the requests were sent to a single entry point without the .htaccess file. How can I accomplish that same thing.
@cubedev4838
@cubedev4838 Жыл бұрын
Amazing!!
@saziknows
@saziknows 2 жыл бұрын
Thank you🙇‍♂️bringer of wisdom
@abulyamanpro
@abulyamanpro 5 ай бұрын
Sir I have a question. You are runnig the built in php web server so there is a single entry point: index.php. But on apache just gives the files that are are requested. For example: on built in php web server, demo/about will forward the request to index.php where the routing is defined. the simple router can figure out which file to require. But on apache, demo/about gives error becuase there is no file names about, instead it is about.php. the request is not passed to the index.php file which has the router. How can I solve the problem?
@CHSKnight
@CHSKnight 5 ай бұрын
Im also stuck on that one
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
@@CHSKnight Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@asheaven1st
@asheaven1st 2 жыл бұрын
This is exactly lesson that I need.. I search this years ago, and I didn't get it.. You really know how to explain things.. Thanks a lot from the deep of my heart 🥲
@mehmetaydar_QXyGeN
@mehmetaydar_QXyGeN 6 ай бұрын
Amazing 🔥👑
@christopherstage9814
@christopherstage9814 2 жыл бұрын
Jeffrey writes his own framework
@Auxfuse89
@Auxfuse89 Жыл бұрын
Does anyone have a simple breakdown of why this is not working on XAMPP (windows 10)? I have updated the nav partial for the `/about` path, and added the uri check in root index.php...however, whenever I click on "About" to navigate to it, I'm getting a file not found. I've been going around in circles for hours, and have tried all approaches in the comments. 😢So damn annoying too, because the root returns as normal....and up to this one video, no issues. I'm not naive, I've done my homework and tried a lot of alternatives...but I am a little green when it comes to PHP and the intricacies of it around local development. So any help would be huge! 🤜
@kazzbeast5132
@kazzbeast5132 Жыл бұрын
I had to utilize the suggestion of a previous comment suggesting that an .htaccess file be created in the project's root folder with 'FallbackResource /project/index.php'. I hope this applies to your use case!
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
@@kazzbeast5132 Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@learnwithkhubbaib
@learnwithkhubbaib Жыл бұрын
Great Work as i have 10+ years experience in PHP, still learning alot from you and your way of teaching is awesome, I have one question when writing functions for routing why its not written in functions.php? instead have their own file, Still own file is good but functions.php means have all the functions. Can you elaborate it.
@CHSKnight
@CHSKnight 5 ай бұрын
Anyone also have issues with routers not working on xampp? Only the index router works
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@ImEli2215
@ImEli2215 Ай бұрын
And I cannot seem to find the solution.
@CHSKnight
@CHSKnight Ай бұрын
@@ImEli2215 check my other comment/comments. I found the solution
@Bishop_Six
@Bishop_Six 2 жыл бұрын
Single point of entry did'nt work for me. I'm using WAMP Server with php8. On my browser, if i navigate to my project folder the index.php file loads by default which is correct. From there, if i navigate to a route that doesn't exist (as jeffrey did in the begining of the video) i get a "404 The requested URL was not found on this server" error. it does not load up the default index.php file again. Is there anything i'm doing wrong? Please help
@jediampm
@jediampm 2 жыл бұрын
Hi, As i will do a general comment for Jeff, for he explain this, but i will try to explain. If you watched the video 2 or 3 of this series, you will see he boot up a server, but not any server, the php built in server point out to that folder, as document root. If you try with real server that comes with software solutions like XAMP, WAMP and MAMP or Docker container or on hosting provider (which usualy comes with Apache http server), this will not work, because of configurations like document root and other setup that it is needed. Ya, in his first series of PHP for beginners that he did, He did same thing and i, like you, did not understand why, which lead to more confusion to me.
@Bishop_Six
@Bishop_Six 2 жыл бұрын
@@jediampm thanks for responding. I'm using laravel on WAMP and it works out of the box. But the tutorial codes doesn't work on the same WAMP. Why?
@Bishop_Six
@Bishop_Six 2 жыл бұрын
@@jediampm I know laravel is much more advanced but the routing system in this tutorial looks similar to that of laravel's. Why then does laravel work on WAMP and this doesn't?
@Bishop_Six
@Bishop_Six 2 жыл бұрын
@@jediampm never mind, i just got the answers i needed.
@Laracastsofficial
@Laracastsofficial 2 жыл бұрын
If you're instead using Apache, you'll need a rewrite rule. gist.github.com/RaVbaker/2254618
@UndercoverDog
@UndercoverDog Жыл бұрын
Thanks so much
@Trebukeet
@Trebukeet 2 ай бұрын
@1:52 Why are you not getting a 404 not found?😕
@Trebukeet
@Trebukeet 2 ай бұрын
I found a solution. I had to add a redirect all in IIS web.config.
@RodrigoMendoza7
@RodrigoMendoza7 Жыл бұрын
1:42 General Kenobi!
@sandeep.thakur__
@sandeep.thakur__ Жыл бұрын
The code isn't fetching '/about' and '/contact' URIs. Can somebody help
@electricsupplyus
@electricsupplyus Жыл бұрын
Can you make a video on Dynamic Routing? Creating pages based on JSON data?
@טלעמית-מ9כ
@טלעמית-מ9כ Жыл бұрын
Really great series! There is a problem with the router settings in xampp. If I find a solution, I will write here
@ImEli2215
@ImEli2215 Ай бұрын
Did you ever find the solution?
@niranjanfartare1523
@niranjanfartare1523 Жыл бұрын
Awesome Series, but getting a 404 Not Found on Apache for /about, works great with php -S.
@RJComedyHub
@RJComedyHub 8 ай бұрын
Brother, Thank you so much. This process working perfectly in localhost. But not working in live server. Please help me.
@ll18307
@ll18307 4 ай бұрын
how to do it when the uri has a path parameter like /{id} ?
@blitzenon7999
@blitzenon7999 Жыл бұрын
This is working in localhost, but I have problem in deploying with custom route.
@MrRicardosgeral
@MrRicardosgeral 2 жыл бұрын
Hi I get 404 error when i put something after the "/" in the url for example localhost/something gives me a 404 i'm using laragon How did you not got an error?
@imransadikbangla
@imransadikbangla 11 ай бұрын
I am facing same issue.
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
answers of people who faced the same problem:
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA]
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@AnggaNegara
@AnggaNegara 2 жыл бұрын
Wouldn't this fail if I hit the page with, for example, /about/?123 ? or if the server configuration for trailing slash is enabled
@alalyrealestate1136
@alalyrealestate1136 Жыл бұрын
Thanks >>> but can you help me >>> because i have a problem running this code on windows xampp, in the comments "son of troy" suggested using htaccess file, but i don't how to do it
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@MictoSoftware
@MictoSoftware 10 ай бұрын
what to do if i have another button in the homepage and it has another link page? pls i hope you notice it..
@jediampm
@jediampm 2 жыл бұрын
Hi Jeff, Please explain in the next video why this works on php built in server and it will not in software solutions like XAMP, LAMP OR WAMP, Docker container or even on hosting provider. I am asking, because you did same thing your first series of php for beginners ( The PHP Practitioner), and it just confuse me a lot and i am sure others too, at that time in laracast. For example, here in youtube, you have a comment about this from Philip Tammy, to avoid more confusion and misleading people to think that make a router is simple and no need to config a server. Another think i want to ask is what is best practice for naming routes / url for full website and web api, because i worked for companies that do not how should naming the pages or routes. Thanks.
@Laracastsofficial
@Laracastsofficial 2 жыл бұрын
We're using PHP's built-in server for this series, so we get the rewriting for free. If you're using Apache or Nginx, the rules might be different. That's all entirely separate from the process of writing a simple PHP router. A quick Google search for something like "Apache rewrite to index.php" will provide hundreds of solutions. gist.github.com/RaVbaker/2254618 stackoverflow.com/questions/12195622/apache-redirect-directory-to-index-php
@jediampm
@jediampm 2 жыл бұрын
@@Laracastsofficial Hi, i know that you you using built-in server and for prod server you need mod rewrite to read the htaccess file and. htaccess file configuration for apache http server ( where all frameworks provide that kind of config file for Apache) , as i said long time ago i watched The PHP Practitioner (which was great) and i did my research for that at that time, so no need to explain to me now. To go direct to the point, in this video you should be clear, to your viewers, don't repeat same mistake of dont saying the how and why this is working. By saying or write in the comments is not enough, not all people will read the comments or make some research on it because they dont know the problem or what key words to use. And another thing, for simple projects, you dont need router to have clean urls, because like you show, if you have a file call index.php, the server know what to do, you have a folder call contact and inside you have a file call index.php or ( even index.html if it is only static page), you do '/contact/' , it will load the file. you just mention and show but dont said why should be index.php, i tell you, because exist config file that said to the server files call index.php or index.html is to load and give priority. Thanks.
@hassanrezve7269
@hassanrezve7269 Жыл бұрын
@@Laracastsofficial i was very confused and frustated until i read the comments thanks jeff for the help i solved the problem by googling the solution as u told us to write
@ibrahimcious
@ibrahimcious Жыл бұрын
thanks man, I confused too. I had re-installed xampp in my PC, but still doesn't work. Using PHP's build-in server is the answer.
@MartinExequielFuraca
@MartinExequielFuraca Жыл бұрын
Im having the same f* problem, still can’t solve it. How do u use php-built in server? Would it affect my xamp config?
@axel2004.
@axel2004. 2 жыл бұрын
ITS REALLY WORKED LOL THANK YOU DUDE
@GuDvIn31region
@GuDvIn31region 2 жыл бұрын
Thank you!
@muratbadem3638
@muratbadem3638 Жыл бұрын
When I put it into the file named x, it gives an error and says it is indexing. Is there a solution? I can't use a router.
@emreonural
@emreonural Жыл бұрын
please share editor, looking best!
@fmgchannel5650
@fmgchannel5650 Жыл бұрын
thanks for video
@BenTV_Italia
@BenTV_Italia 2 жыл бұрын
PHP is the best
@vuhoan-f7r
@vuhoan-f7r 10 ай бұрын
why you cut config file .htaccess, how newbie can understand when see this video.
@imransadikbangla
@imransadikbangla 11 ай бұрын
My code not work. I used your code too, but it still not works. It shows "Not Found The requested URL was not found on this server." Please solve this problem. Thanks.
@لوسيفرجبريل
@لوسيفرجبريل 2 ай бұрын
Answer 1 Hello just want to share how I resolved this issue, first create a .htaccess on your folder(must be a root level), then copy and paste this: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?path=$1 [NC,L,QSA] Answer 2 Hello I have the error no found in laragon I had to use chatgpt, in my case I had to create at root folder a file call " .htaccess " inside , FallbackResource /index.php, all request should redirect to index, also you need enable mod_rewrite in your apache config Answer 3 (mamp) I basically copied the wordpress .htaccess file and replaced 'wordpress' in the file with the name of the project folder. I put the .htaccess file directly inside of the project folder and ofc the project folder was inside the htdocs file in mamp. Note: my project folder name was '15-make-a-php-router' The content of my .htaccess file: RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /make-a-php-router/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /15-make-a-php-router/index.php [L]
@ozorg
@ozorg 2 жыл бұрын
great tut! thx!
@somegoofy
@somegoofy Жыл бұрын
2:21 localhost/contact does not return REQUEST_URI = "/contact" ........... why? simple - 404 The requested URL /contact was not found on this server and this happens before any php whole thing start working after: = changing apache httpd.conf, = adding corect .htaccess file in corect folder, = modifing in php code path to php files
@imransadikbangla
@imransadikbangla 11 ай бұрын
I am facing same issue
@imhayatunnabi
@imhayatunnabi 2 жыл бұрын
what is the name of this ide ? plz let me know
@adorablebabiesandpets2514
@adorablebabiesandpets2514 2 жыл бұрын
Can you teach SOLID PRINCIPLE in php please
@andrewtedjawardana5198
@andrewtedjawardana5198 4 ай бұрын
5:28
@JoshuaRotimi
@JoshuaRotimi 2 жыл бұрын
Wow!
@bimbim1862
@bimbim1862 Жыл бұрын
PHP For Beginners from master :D
@rustamergashev7278
@rustamergashev7278 5 ай бұрын
👍
@kaneich
@kaneich Жыл бұрын
this will not work if you running in apache service he running it from php server php -S it will work but in apache you need to use .htaccess
@imransadikbangla
@imransadikbangla 11 ай бұрын
I am facing this issue. How can I solve this? Can you explain it please?
@codewithjom
@codewithjom Жыл бұрын
*in the last episode we learn how to die* 1:57
@Mahin_katariya
@Mahin_katariya 6 ай бұрын
for some reason its not working for me
@michi19935
@michi19935 6 ай бұрын
The real question is how do I create product pages without GET Params. This would look much better
@sumith
@sumith Жыл бұрын
nic cool😍
@thuriyayenaing7571
@thuriyayenaing7571 Жыл бұрын
anybody who's wondering why their routing doesn't work , look for the answers in the comments
@imransadikbangla
@imransadikbangla 11 ай бұрын
I am facing this issue.
@sonoftroy8572
@sonoftroy8572 2 жыл бұрын
Hey I have a quick question. when it comes to relative path vs absolute path, how does that affect my application? a few things to note, my file structure has the public, App dir structure. and my httpd.conf document root and directory points to the public folder by default. I have a bug that wont allow me to request the about page or contact page. I'm confused because my file and url paths are correct... but the error message is telling me the request url was not found on the server. That cant be right... I know my paths are correct. thoughts anyone...
@fernandolicea2088
@fernandolicea2088 Жыл бұрын
Use the server by PHP, you can use: php -S localhost:8888 in the console
@transi2844
@transi2844 Жыл бұрын
theme
@ErwinMaas
@ErwinMaas Жыл бұрын
This is not for beginners, you lost me after 2 minutes and I am not a beginner. You go way too fast and don't explain, you just show things.
@and-why
@and-why 9 ай бұрын
To all xammp users, short open tag
@ImEli2215
@ImEli2215 Ай бұрын
; short_open_tag ; Default Value: On ; Development Value: Off ; Production Value: Off This is what is in the php.ini file do I need to change anything?
@and-why
@and-why Ай бұрын
@@ImEli2215 find or add it a bit lower down in the file without the semicolons in the beginning, what you pasted is part of Quick Reference and is not a config
@ImEli2215
@ImEli2215 Ай бұрын
@@and-why Ow ok let me try that out and see if it works.
@haseebzafar5957
@haseebzafar5957 Жыл бұрын
$uri = parse_url($_SERVER['REQUEST_URI'])['path']; if($uri === '/routing/index'){ require 'controllers/index.php'; }else if($uri === '/routing/contact'){ echo 'controllers/contact.php'; } I wrote this code in index.php, the route of index is working but contact is not opening on index.php. For contact I must declare contact.php then it will work, kind please help me to sort it.
@pmanolak
@pmanolak 2 жыл бұрын
Excellent lesson!!!!
@DanielDrummond2k6
@DanielDrummond2k6 10 ай бұрын
Hi! I'm having trouble when we're going to implement the error pages. Chrome simply does not display the page, in this case 404.php but a standard 404 error from Chrome. I've already tried creating a .htaccess file to try and resolve it without success. Can we help me?
PHP For Beginners, Ep 16 - Create a MySQL Database
6:10
Laracasts
Рет қаралды 16 М.
CM3035MidtermsVideo
8:00
Topher Harsh
Рет қаралды 2
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН
We Attempted The Impossible 😱
00:54
Topper Guild
Рет қаралды 56 МЛН
Use PHP to Create an MVC Framework - Full Course
6:03:47
freeCodeCamp.org
Рет қаралды 261 М.
PHP For Beginners, Ep 33 - Build a Better PHP Router
20:46
Laracasts
Рет қаралды 23 М.
I built an app using a single index.php file, here's how it went
32:42
Andrew Schmelyun
Рет қаралды 91 М.
Write Laravel, not PHP (feat. Aaron Francis) | 029
58:45
Backend Banter
Рет қаралды 22 М.
FULL Introduction To HTMX Using Golang
2:02:31
ThePrimeagen
Рет қаралды 401 М.
PHP For Beginners, Ep 35 - Make Your First Service Container
19:23
All 29 Next.js Mistakes Beginners Make
1:45:10
ByteGrad
Рет қаралды 155 М.
Laravel + Livewire todo app (and so much more)
16:41
Aaron Francis
Рет қаралды 52 М.
PHP For Beginners, Ep 30 - Autoloading and Extraction
19:37
Laracasts
Рет қаралды 16 М.