Witaj, Gościu O nas | Kontakt | Mapa
Wortal Forum PHPEdia.pl Planeta Kubek IRC Przetestuj się!

Tutorial PHP/MySQL

Ukończony skrypt

W całym kursie przedstawiłem informacje jak za pomocą PHP komunikować się i operować na bazach typu SQL. Pokazałem również w jaki sposób zbudować bardzo prosty system zarządzania kontaktami. Obecnie przedstawię finalną wersję skryptu i kilka ciekawych porad odnoszących się do MySQL.

Oszczędzanie czasu

Podczas pisania wielu wersji skryptu lub wielu skryptów używających bazy danych zauważysz ze wielokrotnie np. trzeba się z ta bazą połączyć. Więc zamiast powtarzać te same operacje w kilku plikach lepiej jest stworzyć plik ze wspólnymi informacjami a później dołączać go do skryptu. W tym celu można stworzyć plik:

dbinfo.inc.php

i umieścić w nim

<?
$username="nazwa użytkownikabazy danych";
$password="chasło bazy danych";
$database="nazwa bazy danych";
?>

następnie w skrypcie umieścić odwołanie do tego pliku w taki sposób:

include("dbinfo.inc.php");

lub

include("/pełna/ścieżka/do/pliku/dbinfo.inc.php");

na początku pliku. Wtedy można używać $username, $password, $database w obrębie całego skryptu bez konieczności każdorazowego ich definiowania. Dodatkowo jeśli kiedyś będziesz musiał zmienić te dane np. w wyniku zmiany hosta będzie konieczna edycja tylko jednego pliku.

Wyszukiwanie

Podstawowa forma wyszukiwania zawarta jest w samej bazie danych za pomocą funkcji LIKE co obrazuje przykład:

SELECT * FROM tablename WHERE fieldname LIKE '%$string%'

LIKE informuje bazę danych o konieczności wyszukiwania. Znaki % oznaczają dowolne ciągi w tym miejscu, a $string przechowuje ciąg znaków jaki chcesz odszukać. W tym miejscu może być znak lub liczba np.:

LIKE '%piano%'

spowoduje zwrócenie wierszy zawierających słowo piano.

Podobnie możesz pominąć jeden ze znaków % podkreślając pozycja po której wystąpić ma szukane słowo.:

LIKE 'piano%'

wyświetli tylko wiersze zaczynające się od słowa piano tak więc wyniki typu:

The piano is next to the table.

nie zostaną uwzględniona, ponieważ przed piano występuje The.

Finalny skrypt

Podczas trwania tego poradnika pokazywałem poszczególne części skryptu. Jego całość można pobrać:

Zakończenie

Po zapoznaniu się z całością materiału powinieneś znać podstawy używania razem technik PHP i MySQL w celu tworzenia i obsługi baz danych. Korzystając z baz danych w obrębie stron tworzysz dynamicznie, oszczędzasz czas i wiele więcej.

Informacje na podobny temat:
Wasze opinie
Wszystkie opinie użytkowników: (7)
gdzie link?
Piątek 15 Lipiec 2011 12:45:10 pm - beneglih

Fajny tutorial, tylko dlaczego na jego końcu jest informacja, że skrypt można pobrać, dwukropek i puste miejsce, brak linka...

ort
Sobota 13 Marzec 2010 10:02:17 pm - katwer <katwer_at_op.pl>

Co jak co, ale artykuł do druku na poważnym portalu, to już powinien przejść przez standardowe sprawdzanie pisowni choćby zautomatyzowane, jeśli autor nie wie, jak się pisze HASŁO.

Sorry, ale takie lekceważenie języka polskiego - musiałam.

pytanie
Niedziela 01 Lipiec 2007 8:56:38 pm - bercik156 <fifunia07_at_wp.pl>

mam pytanie jak zmienić w bazie danych język żeby na stronie były polskie znaki??

złeeee
Poniedziałek 07 Maj 2007 9:01:03 am - wbeatn <wbeatn_at_gmail.com>

dlaczego w tym artykule jest podany bledny kod ? strona z dodawaniem do bazy mi dziala, to samo jest ze strona ktora wyswietla rekordy, ale strona ktora ma wyswietlic formularz edytujacy wywala blad 'Warning: mysql_numrows(): supplied argument is not a valid MySQL ...' .. robie wszystko wedlug instrukcji i takie cos :/

Dłąd :D
Sobota 25 Listopad 2006 11:38:44 pm - sabistik <wiktorski_at_poczta.php.pl>

haha, Czemu nikt wcześniej tego nie zraportował:
http://irc.php.pl/blog/?id=392
?? ;D

Wyjaśnienie małe
Piątek 27 Październik 2006 9:26:17 pm - slump <slump_Ilawa_at_wp.pl>

Twoje sugestje są jak najbardziej trafne, jednak pamiętaj, że jest to tylko translacja arta z języka Angielskiego.
Pozdrawiam

Kilka luźnych uwag
Czwartek 26 Październik 2006 12:12:12 pm - Diabl0

Rozumiem że jest to art dla totalnie początkujących i przeglądałem go bardzo pobieżnie, ale mimo wszystko mam kilka zastrzeżeń:

1 - instalowanie phpmyadmin na serwerze bez odpowiedniego zabezpieczenia go - kto się opiekuje serwerami niech spojrzy sobie w logi jak często trafiają się roboty szukające phpmyadmin - nie sądzę aby szukały one sobie tylko z czystej ciekawości. Trzeba było przynajmniej napisać jak go zabezpieczyć przez .htaccess

2 - SQL incjection - wstawianie danych pochodzących od usera prosto do bazy bez sprawdzenia i zabezpieczenia. Temat ten wszędzie jest tak często wałkowany że tutorial dla początkujących z takim błędem to duży imho duża porażka. Aż tak ciężko było poświęcić dwa akapity na wyjaśnienie zagrożenia i zaproponowanie chociażby mysql_escape_string?

3 - nie wiem skąd takie parcie na while ($i < $num) i każdorazowe przepisywanie danych? IMHO dużo wygodniejsze (zwłaszcza dla początkujących, a nie wiem też czy nie szybsze) jest while ($row = mysql_fetch_assoc($ret).

4 - drobiazg, ale: <? :) <?php jest bardziej prawidłowe zwłaszcza że już słyszałem jakieś pogłoski że <? ma zostać z czasem usunięte :)

5 - formatowanie kodu - ja rozumiem że system znaczników na php.pl może utrudniać zachowanie wcięć itp, ale skoro to jest tutorial dla początkujących to przydało by się też zadbać o uczenie ich dbałości o wygląd kodu i jego staranniejsze formatowanie - to naprawdę ułatwia w przyszłości życie a dzięki odrobiny praktyki stosuje się praktycznie odruchowo.

To takie moje drobne uwagi po pobieżnym przejrzeniu arta (głównie fragmentów kodu) . Nie jest to żadna miażdżąca krytyka - po prostu wychodzę z założenia że o ile w arcie dla doświadczonych programistów nawet nie było by sensu zwracać na to uwagi (w końcu każdy i tak ma już wyrobione własne nawyki i przyzwyczajenia), to jednak w arcie dla początkujących warto położyć większy nacisk na tego typu drobiazgi aby od początku wtłaczać i wyrabiać w nich dobre nawyki.

Mentax.pl    NQ.pl- serwery z dodatkiem świętego spokoju...   
O nas | Kontakt | Mapa serwisu
Copyright (c) 2003-2021 php.pl    Wszystkie prawa zastrzeżone    Powered by eZ publish Content Management System eZ publish Content Management System