Good evening. I have such a problem ... I have been studying php for the last six months. I learned a lot, I know a lot, including OOP and some APIs. It’s time to create a project to consolidate your knowledge, but I don’t know how to do it. For example, I can register / log in, upload files, output all of this. I can parse XML, generate captcha. But at the same time I cannot write the site. The fact is that if you now start writing a site, then if it works, it will be bad code. Somewhere there will be shameful algorithms, somewhere there will be a ridiculous functional, somewhere there will be a complete shame, etc. Do not tell me if such a resource, video, book, etc. which would explain in detail exactly the principles of the implementation of websites, blogs, online stores. Thank you in advance.

Closed due to the fact that off-topic participants Oceinic , ermak0ff , Regent , aleksandr barakin , Vladimir Glinskikh 16 Oct '15 at 7:11 .

It seems that this question does not correspond to the subject of the site. Those who voted to close it indicated the following reason:

  • " Questionnaires are forbidden on Stack Overflow in Russian . To get an answer, rephrase your question so that it can be given an unambiguously correct answer." - ermak0ff, Regent, aleksandr barakin, Vladimir Glinskikh
If the question can be reformulated according to the rules set out in the certificate , edit it .

  • 3
    @tooq, you reminded me of a joke about the transfer of "Field of Miracles", where a man guessed all the letters, but could not read the word. )) If, as you say, “I taught a lot, I know a lot”, if you didn’t learn from Popov’s video courses ( God forgive me ), then what is the problem? All the bricks of your knowledge, you just need to put together. And naturally, to create a website, you would not hurt to know the basics of layout (HTML, CSS). You did not indicate the latter, but it is possible that this is not alien to you. - Deonis
  • @Deonis, I look like an idiot?) I did not look at Popov, but about html and css, I know them very well. I can already quite work as a typesetter) Now about the "bricks" ... That's the thing. I need to collect all these fucking bricks, but I do not know how ... - tooq

4 answers 4

How many bad words at the end ... Your question is rhetorical.

Then you have 2 ways in my opinion, you definitely have to make the first site, especially if you want to earn it later.

  1. Fill the bumps and write, what were you talking about, then rewrite it all and write again. The result - you will know the language, in the end you will have your actual engine.

  2. To master the framework or even not one, they will partially save you from writing crutches and are in demand by employers.

If you are interested in the methods of writing the site (without the framework), then there are also two main ones.

Either you have each page launches a separate real file in which the necessary modules are connected.

Either a redirect is made to the handler, which processes the request and automatically connects everything you need.

Of course, the latter option is preferable. In addition, I recommend writing pages in separate modules, rather than laying out everything in separate folders css, js, ... so it will be easier to transfer developments from the project to the project.

  • one
    I believe in the first way, because in addition to my bugs, it will not be necessary to deal with the framework and read the tea leaves how it all works there. It is worth moving to the second path when the bumps from the first one are already healed :) - xEdelweiss

I thought so too. Started writing. The first time it turned out that all functions were in one file. Then I knew little about PHP at all. Then I read about OOP, I created classes, I began to load them automatically. I took the algorithms that I wrote in the previous version. So it became better. Then I learned about shlibonisators, put in Smarty. Along the way, I changed the algorithms, changed the database, changed everything, radically changed based on the new experience. Now everything works fine, but I continue to optimize, add functionality, now, for example, I am rewriting the admin panel. Just start with something primitive, then it will go! Good luck :).

    You know a lot, and you think you need something else. But more to start creating sites do not need anything. That is enough theory start to practice. I think this is enough to start to impose. So during the creation of the first (maybe not the first) site you will understand what knowledge is missing or what to teach. And you want something else. Just find a website and try to do something like this. First, you will receive experience and the result of theoretical studies (although it may be with a bad code). But then you can improve it and learn from mistakes. I myself am just learning (self-taught) and I really like it, but I started with:

    1. site ideas;
    2. then I looked at what was needed to accomplish what I saw somewhere or what I needed;
    3. I was looking for examples, literature;
    4. implemented;
    5. point 2 3 4 to repeat to the end.

    So much more interesting and easier. Well, I still do point 5.

      you need to learn application design patterns. knowing the principles and syntax is not enough.