17.03.2016, 17:51
Hej!
Złapałem trochę weny twórczej w skrzydła. Próbuję podłapać trochę praktycznego kodu php/mysql na potrzeby własne.
Docelowo chce sobie stworzyć coś na zasadzie mini cms'a. W sumie nano-cms'a lub jeszcze mniejsze. Idea jest taka, że chcę stworzyć sobie coś, z czego sam będę korzystał, a przy okazji zrozumieć mniej więcej jak to działa.
Na podstawie paru poradników, stworzyłem sobie logowanie do mojej strony. W tym celu powstały już pliki:header('Location: index.php'); .
I teraz pytania.
Złapałem trochę weny twórczej w skrzydła. Próbuję podłapać trochę praktycznego kodu php/mysql na potrzeby własne.
Docelowo chce sobie stworzyć coś na zasadzie mini cms'a. W sumie nano-cms'a lub jeszcze mniejsze. Idea jest taka, że chcę stworzyć sobie coś, z czego sam będę korzystał, a przy okazji zrozumieć mniej więcej jak to działa.
Na podstawie paru poradników, stworzyłem sobie logowanie do mojej strony. W tym celu powstały już pliki:
- index.php - strona główna
- login.php - strona z panelem logowania
- s_login.php - skrypt otwierający połączenie z bazą i sprawdzający czy podane dane zgadzają się z tymi z tabeli użytkownicy. Jeśli wszystko poszło pomyślnie, tworzy się sesja, która jest wykorzystywana w podstronach typu index - do sprawdzania czy jesteśmy zalogowani, lub do wyświetlania nazwy zalogowanego konta, która to została wrzucona w sesję, aby móc jej użyć w innym pliku - index.
- config.php - zawierający dane logowania do bazy danych
- logout.php - kończący sesje, przenoszący do strony głównej, tudzież panelu logowania
I teraz pytania.
- Jak najlepiej zoptymalizować te pliki. Logowanie w zasadzie sprowadza się do otworzenia połączenia z bazą i wysłania zapytania. Każdy kolejny skrypt też będzie musiał nawiązać połączenie z bazą i wysłać swoje instrukcje. To tworzy nie tylko wiele plików, ale w dodatku - powtórzenia. Wstęp zawsze będzie ten sam - połączenie z bazą. Jest sens to wrzucić w osobny plik i każdorazowo robić include? W zasadzie to zaledwie parę linijek.
- Stworzyłem sobie prosty 'panel' do dodawania nowych użytkowników. Muszę go trochę poprawić, przede wszystkim zabezpieczyć, ale działa. Teraz próbuje dodać możliwość wyświetlania tabeli userów, wszystkich rekordów. Docelowo będzie to w zakładce użytkownicy, ale na tym etapie jest to po prostu button na stronie głównej, który metodą post odwołuje się do skryptu wykonującego zapytanie po uprzednim połączeniu z bazą. W chwili obecnej fragment ten wygląda tak:
<-- Ze względu na problemy z formatowaniem kodu php, kod zamieszczam poniżej listy pytań -->
- Przycisk po kliknięciu przenosi na podstronę s_showusers.php i wywala kolejno dane każdego użytkownika. Pytanie: Chcę to ładnie ubrać w tabelkę, która będzie się wyświetlała w określonym miejscu, np.
<div id="tutaj"></div> w osobnym pliku, np. index.php albo users.php. Jak, jakiej funkcji/metody użyć by wynik skryptu przenieść w wybrane miejsce.
- Póki co każda akcja jest wykonywana przyciskiem, który metodą post wywołuje odpowiedni skrypt. W jaki, lepszy sposób uzyskać podobny efekt. Przede wszystkim, chciałbym uzyskać możliwość pisania większości bliźniaczych funkcji/instrukcji w jednym pliku... na początku otwierałbym połączenie z bazą, a następnie w zależności od wybranej akcji wykonywałaby się jedna z wielu funkcji.
Kod PHP:
$sql = $db_connect->query("SELECT * FROM uzytkownicy ORDER BY id ASC");
while ($row = mysqli_fetch_row($sql))
{
echo $row[1] ."<br />";
echo $row[2] ."<br />";
echo $row[3] ."<br />";
}