Okna.  Wirusy.  Laptopy.  Internet.  Biuro.  Narzędzia.  Kierowcy


Lekcja będzie oparta na formularz informacja zwrotna , niezbędny na prawie każdej stronie internetowej.

Krok pierwszy: Tworzenie bazy danych w MySQL'a

Otwór phpMyAdmina(zawarte w pakiecie podstawowym Denwera`a) i utwórz bazę danych o nazwie „ baza_testowa", wybierz kodowanie " cp1251_general_ci".

Krok drugi: Tworzenie tabeli w MySQL'a używając Zapytanie SQL

Możesz oczywiście utworzyć tabelę za pomocą standardowe środki phpMyAdmina, ale w ten sposób struktura tworzonej tabeli będzie dobrze widoczna.

Utwórz tabelę o nazwie „ tabela_testowa" i z sześcioma polami o nazwach:
"nazwa" - tutaj będą przechowywane nazwy użytkowników;
„e-mail” – tutaj będą zapisywane adresy elektroniczne skrzynki pocztowe użytkownicy;
„temat” – tutaj będzie zapisany temat wiadomości;
„wiadomość” – tutaj będą przechowywane wiadomości;
„dane” – w tym miejscu będzie zapisana data wysłania wiadomości;
"id" - numer identyfikacyjny rekordu (wiersza), pole kluczowe.

Zapytanie SQL:
utwórz tabelę test_table(
id int(11) nie ma wartości null auto_inkrementacja,
nazwa varchar(255) nie jest pusta,
e-mail varchar(255) nie ma wartości null,
motyw varchar(255) nie jest pusty,
tekst wiadomości nie jest pusty,
data danych nie jest null,
klucz podstawowy (identyfikator)
);

Krok trzeci: Tworzenie formularza

indeks.html:

Formularz zapisany w MySQL

Przykład formularza z zapisem danych w MySQL

























Wysyłanie zapytania
Nazwa:
E-mail:
Temat wiadomości:
Wiadomość:


























Krok czwarty: Tworzenie modułu obsługi formularza” zapisz_form.php" z zapisaniem odebranych danych w formacie MySQL'a

zapisz_form.php:





/* Tabela MySQL, w której będą przechowywane dane */
$tabela = "tabela_testowa";

/* Utwórz połączenie */

/* Określ aktualną datę */
$cdate = data("R-m-d");

/* Tworzymy zapytanie wstawiające informacje do tabeli
nazwa...data - nazwa poszczególnych pól w bazie danych;
w $_POST["nazwa_testu"]... $_POST["mess_testu"] - zmienne te zawierają dane otrzymane z formularza */
$query = "WSTAW DO $ZESTAWU nazwa="".$_POST["nazwa_testu"].", email=".$_POST["poczta_testowa"]",
motyw="".$_POST["temat_testowy"].", wiadomość="".$_POST["mess_testowy"].", data="$cdate"";

/* Zamknij połączenie */
mysql_close();

/* Jeśli zapisywanie się powiedzie, wyświetl komunikat i link zwrotny */
echo("


Dane zostały zapisane pomyślnie!



Wracać
");

Krok piąty: Wyświetlanie zapisanych danych” view_data.php"

view_data.php:

/* Połącz się z bazą danych */
$nazwa hosta = „host lokalny”; // nazwa/ścieżka serwera z MySQL
$nazwa użytkownika = "root"; // nazwa użytkownika (w Denwer domyślnie jest to „root”)
$hasło = ""; // hasło użytkownika (w Denwer domyślnie nie ma hasła, parametr ten można pozostawić pusty)
$dbName = "baza_testowa"; // nazwa bazy danych


$tabela = "tabela_testowa";

/* Utwórz połączenie */
mysql_connect($nazwa hosta, $nazwa użytkownika, $hasło) or die("Nie można utworzyć połączenia");

/* Wybierz bazę danych. Jeśli wystąpi błąd, wyświetl go */
mysql_select_db($dbName) lub die (mysql_error());

/* Tworzymy zapytanie wydobywające dane z pól „nazwa”, „e-mail”, „motyw”,
tabele „wiadomość”, „dane” „tabela_testowa” */
$query = "WYBIERZ identyfikator, nazwę, e-mail, motyw, wiadomość, dane Z $tabeli";

/* Wykonaj żądanie. Jeśli wystąpi błąd, wyświetl go. */


echo("

Wyprowadzanie danych z MySQL

Wyprowadzanie wcześniej zapisanych danych z tabeli MySQL










");



echo”

\N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
echo” \N\N";
}

Echo("

# Data dostępu Nazwy użytkowników Adres e-mail użytkowników Temat wiadomości Wiadomości użytkownika
".$wiersz["id"]."„.$wiersz[„dane”].”„.$wiersz[„nazwa”].”„.$wiersz[„e-mail”].”„.$wiersz[„motyw”].”„.$wiersz[„wiadomość”].”
\N");

/* Zamknij połączenie */
mysql_close();

Krok szósty: Usuwanie rekordów z bazy danych” del_data.php"

del_data.php:

/* Połącz się z bazą danych */
$nazwa hosta = „host lokalny”; // nazwa/ścieżka serwera z MySQL
$nazwa użytkownika = "root"; // nazwa użytkownika (w Denwer domyślnie jest to „root”)
$hasło = ""; // hasło użytkownika (w Denwer domyślnie nie ma hasła, parametr ten można pozostawić pusty)
$dbName = "baza_testowa"; // nazwa bazy danych

/* Tabela MySQL, w której przechowywane są dane */
$tabela = "tabela_testowa";

/* Utwórz połączenie */
mysql_connect($nazwa hosta, $nazwa użytkownika, $hasło) or die("Nie można utworzyć połączenia");

/* Wybierz bazę danych. Jeśli wystąpi błąd, wyświetl go */
mysql_select_db($dbName) lub die (mysql_error());

/* Jeśli kliknięto łącze usuwania, usuń wpis */
$del = $query = "usuń z $tabeli gdzie (id="$del"");
/* Wykonaj żądanie. Jeśli wystąpi błąd, wyświetl go. */
mysql_query($query) lub die(mysql_error());



/* Wykonaj żądanie. Jeśli wystąpi błąd, wyświetl go. */
$res = mysql_query($query) lub die(mysql_error());

$wiersz = mysql_num_rows($res);

/* Dane wyjściowe z tabeli */
echo("

Wyprowadzanie i usuwanie danych z MySQL

Wyprowadzanie i usuwanie wcześniej zapisanych danych z tabeli MySQL











");

/* Cykl wyprowadzania danych z bazy danych określonych pól */
while ($row = mysql_fetch_array($res)) (
echo”

\N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
/* Wygeneruj link do usunięcia pola */
echo” \N";
echo”\N";
}

Echo("

# Data dostępu Nazwy użytkowników Adres e-mail użytkowników Temat wiadomości Wiadomości użytkownika Usuwanie
".$wiersz["id"]."„.$wiersz[„dane”].”„.$wiersz[„nazwa”].”„.$wiersz[„e-mail”].”„.$wiersz[„motyw”].”„.$wiersz[„wiadomość”].”Usuwać
\N");

/* Zamknij połączenie */
mysql_close();

Krok siódmy: Edycja i aktualizacja zapisów w bazie danych” aktualizacja_data.php"

aktualizacja_data.php:

/* Połącz się z bazą danych */
$nazwa hosta = „host lokalny”; // nazwa/ścieżka serwera z MySQL
$nazwa użytkownika = "root"; // nazwa użytkownika (w Denwer domyślnie jest to „root”)
$hasło = ""; // hasło użytkownika (w Denwer domyślnie nie ma hasła, parametr ten można pozostawić pusty)
$dbName = "baza_testowa"; // nazwa bazy danych

/* Tabela MySQL, w której przechowywane są dane */
$tabela = "tabela_testowa";

/* Utwórz połączenie */
mysql_connect($nazwa hosta, $nazwa użytkownika, $hasło) or die("Nie można utworzyć połączenia");

/* Wybierz bazę danych. Jeśli wystąpi błąd, wyświetl go */
mysql_select_db($dbName) lub die (mysql_error());

/* Jeśli naciśnięto przycisk edycji, dokonaj zmian */
if(@$submit_edit) (
$query = "UPDATE $zestaw tabeli nazwa="$test_name", email="$test_mail", motyw="$test_theme", message="$test_mess" WHERE id="$update"";
/* Wykonaj żądanie. Jeśli wystąpi błąd, wyświetl go. */
mysql_query($query) lub die (mysql_error());
}

/* Umieściliśmy całą bazę danych w zmiennej $res */
$zapytanie = "WYBIERZ * Z $tabeli";
/* Wykonaj żądanie. Jeśli wystąpi błąd, wyświetl go. */
$res = mysql_query($query) lub die(mysql_error());
/* Sprawdź liczbę rekordów w bazie danych */
$wiersz = mysql_num_rows($res);

/* Dane wyjściowe z tabeli */
echo("

Edycja i aktualizacja danych

Edycja i aktualizacja danych w tabeli MySQL


");

/* Cykl wyprowadzania danych z bazy danych określonych pól */
while ($row = mysql_fetch_array($res)) (
echo”

\N";
echo” \N";
echo” \N";
echo” \N";
echo” \N";
echo”\N";
echo” \N";
echo”\N";
echo” \N";
echo”\N";
echo” \N";
echo”\N";
echo” \N";
echo”\N";
echo” \N";
echo”
#".$wiersz["id"]."
„.$wiersz[„dane”].”
Nazwa użytkownika:
Adres e-mail użytkownika:
Temat wiadomości:
Wiadomość:
\n\n";
}

/* Zamknij połączenie */
mysql_close();

Cóż, to wszystko, miłego kodowania:1133:

_________________________________

W tym samouczku przyjrzymy się, jak wstawić dane do bazy danych bezpośrednio ze skryptów PHP.

Wstawianie danych przy użyciu języka SQL

Używasz języka SQL do wstawiania danych do bazy danych w taki sam sposób, w jaki używasz języka SQL do tworzenia baz danych i tabel. Składnia zapytania SQL jest następująca:

WSTAW DO nazwy tabeli (kolumna 1, kolumna 2, ...) WARTOŚCI(wartość1, wartość 2, ...)

Jak widać, można zaktualizować wiele kolumn w jednej instrukcji SQL, określając je na liście rozdzielonej przecinkami. Ale oczywiście możesz także określić tylko jedną kolumnę i jedną wartość. Kolumny niewymienione w tej instrukcji SQL pozostaną puste.

Przykład: Wstawienie nowej osoby do stołu

W tym przykładzie używamy bazy danych z lekcji 18. Załóżmy, że chcemy dodać osobę do bazy danych. To mogłoby być Gus Goose z numerem telefonu 99887766 i data urodzenia 1964-04-20 .

Instrukcja SQL może wyglądać następująco:

$strSQL = "WSTAW DO osób (imię, nazwisko, telefon, data urodzenia) WARTOŚCI("Gus","Gęś","99887766","1964-04-20"");

Jak widać, instrukcje SQL mogą być dość długie i łatwo je zgubić. Dlatego lepiej napisać instrukcję SQL nieco inaczej:

strSQL = "WSTAW DO osób("; strSQL = strSQL. "Imię, "; strSQL = strSQL. "Nazwisko," strSQL = strSQL. "Telefon," strSQL = strSQL. "narodziny)"; strSQL = strSQL. "WARTOŚCI ("; strSQL = strSQL . ""Gus", "; strSQL = strSQL. ""Gęś", "; strSQL = strSQL. ""99887766", "; strSQL = strSQL. „20.04.1964””); mysql_query($strSQL) lub die(mysql_error());

Tutaj instrukcja SQL jest konstruowana poprzez podzielenie zdania na małe części, a następnie połączenie ich w zmienną $strSQL.

W praktyce nie ma różnicy w stosowaniu jednej lub drugiej metody, jednak przy pracy z dużymi tabelami umiejętność „śledzenia” staje się niezwykle istotna, dlatego należy wybrać najwłaściwszą metodę.

Wypróbujmy następujący kod, aby wstawić Gus Goose do bazy danych:

Wstawianie danych do bazy danych // Połączenie z serwerem bazy danych mysql_connect("mysql.myhost.com", "użytkownik", "sezam") lub die (mysql_error());// Wybierz bazę danych mysql_select_db("mydatabase") lub die(mysql_error()); //Budowanie instrukcji SQL $strSQL = "WSTAW DO osób("; $strSQL = $strSQL . "Imię, "; $strSQL = $strSQL . "Nazwisko, "; $strSQL = $strSQL . "Telefon," $strSQL = $strSQL . „Data urodzenia”; $strSQL = $strSQL . "WARTOŚCI("; $strSQL = $strSQL . ""Gus", "; $strSQL = $strSQL . ""Gęś", "; $strSQL = $strSQL . ""99887766", "; $strSQL = $strSQL . „20.04.1964””); // Wykonywana jest instrukcja SQL mysql_query($strSQL) lub die (mysql_error()); //Zamknij połączenie mysql_close();

?>



DB zaktualizowany!

Zapisywanie danych wejściowych użytkownika w bazie danych

Załóżmy, że masz prosty formularz: Ratować Formularz ten jest przesyłany do pliku wstaw.php, gdzie, jak pokazano w Lekcji 11, możesz się dostać

dane wejściowe użytkownika

pytając o treść formularza. W tym konkretnym przypadku instrukcja SQL mogłaby wyglądać następująco:

strSQL = "WSTAW DO wartości osób(Imię)("" . $_POST["Imię"] . "")"

Podobnie możesz żądać danych z plików cookie, sesji ciągów zapytań itp.

Najczęstsze błędy początkujących

Na początku prawdopodobnie pojawi się kilka komunikatów o błędach podczas próby aktualizacji bazy danych. Podczas pracy z bazą danych nie są dozwolone żadne błędy. Nieprawidłowy przecinek może oznaczać, że baza danych nie jest aktualizowana i zostanie wyświetlony komunikat o błędzie. Poniżej opisujemy najczęstsze błędy.

Nieprawidłowy typ danych

Ważne jest, aby dane i typ danych kolumny były ze sobą zgodne. Każda kolumna może zawierać dane określonego typu.

Poniższy zrzut ekranu przedstawia typy danych tabeli „ludzie” z naszego przykładu. Jeśli na przykład spróbujesz wstawić tekst lub liczbę do pola danych, zostanie zgłoszony błąd. Dlatego należy ustawić typ danych tak precyzyjnie, jak to możliwe. Poniżej wymieniono najpopularniejsze typy danych:
Oznaczający
Typ danych Rozmiar
CHR
Tekst lub kombinacja tekstu i liczb. Można go również zastosować do liczb nieużywanych w obliczeniach (np. numerów telefonów). Do 255 znaków - lub długość określona w "Długość"
TEKST
Duże bloki tekstu lub kombinacja tekstu i liczb. Do 65 535 znaków
WEWN
Dane numeryczne do obliczeń matematycznych. 4 bajty
DATA
Daty w formacie RRRR-MM-DD 4 bajty
3 bajty
CZAS Czas w formacie gg:mm:ss

DATAGODZINA

Data i godzina w formacie RRRR-MM-DD gg:mm:ss 8 bajtów Instrukcje SQL z cudzysłowami lub ukośnikami odwrotnymi

Jeśli spróbujesz wkleić tekst zawierający znaki pojedynczego cudzysłowu ("),

Wszystkie zmienne wprowadzamy do bazy według wartości, które ustawiliśmy w pierwszych nawiasach. Ważne jest, aby wziąć pod uwagę kodowanie skryptu obsługi, bazy danych i pliku konfiguracyjnego. Wskazane jest użycie najpopularniejszego kodowania UTF-8.

Pamiętaj, że możesz pisać do bazy danych na dwa sposoby.

Pierwszy sposób jeśli początkowo nie określimy nazw komórek tabel bazy danych. Następnie musimy wypisać wszystkie zmienne dla każdej komórki, a mianowicie ile komórek znajduje się w tabeli bazy danych, dlatego też wiele zmiennych należy podać w nawiasach po wartości WARTOŚĆ.

Na przykład:
W tabeli bazy danych znajdują się cztery komórki. Oznacza to, że po elemencie WARTOŚĆ(..) wszystkie cztery zmienne muszą być wymienione w nawiasach. I jeszcze jedno: jeśli zmienna nie istnieje, powiedzmy, że jest to parametr opcjonalny. Po prostu piszemy pusta wartość w cudzysłowie „”,

"WSTAWIĆ WARTOŚCI `baza_nazwy` (NULL, `.$nazwa.`,``,`2`)"; // trzecia pusta wartość jest zapisana w cudzysłowie

Ale to żądanie ma kilka drobnych wad. Jeśli dodasz jedną lub dwie komórki do tabeli bazy danych, wówczas tę prośbę zwróci błąd. Ponieważ w tej metodzie obowiązkowe jest wypisanie wszystkich komórek w zapytaniu.

Drugi sposób jeśli po zapytaniu INSERT INTO `name_base` (...), wypisz wszystkie komórki po nazwie bazy danych. Przykład został już omówiony powyżej. Jeśli zapomniałeś, napiszmy to jeszcze raz:

"WSTAW DO `baza_nazwy`(`nazwa`,`wartość`,`wartość2`) WARTOŚCI (NULL, `.$nazwa.``,``,`2`)";

Tutaj wymieniliśmy wszystkie komórki (nazwa, wartość1, wartość2). A jeśli dodasz dodatkowe dwie komórki do tabeli bazy danych, składnia zapytania nie będzie musiała być zmieniana. Ale chyba że musimy natychmiast dodać w jednym żądaniu te bardzo dodatkowe zmienne, których potrzebujemy dla tych nowo utworzonych komórek.

Ten błąd pojawia się bardzo często po niewielkiej zmianie na stronie. Załóżmy, że administrator dodał do bazy dodatkową komórkę, powiedzmy status. Ale procesor skryptów nie miał czasu na zmianę modułu lub po prostu zapomniał. Ale niektóre witryny mają bardzo złożona struktura, a znalezienie błędu może zająć dużo czasu i wysiłku. Dlatego wskazane jest skorzystanie z drugiej metody zapisu do bazy danych. Chociaż tego rodzaju błąd częściej popełniają początkujący programiści WWW.

Wpis PHP do bazy danych mysql. Praktyczne przykłady

Tak więc, teraz dochodzimy do sedna sprawy podczas pracy z zapytaniami do bazy danych. Wszystko zrobimy na praktycznych przykładach. Stwórzmy prosty skrypt rejestrujący komentarze pozostawiane przez odwiedzających witrynę.

Najpierw utwórzmy tabelę msg w bazie danych z czterema komórkami. W pierwszej komórce wpisujemy identyfikator komentarza. Liczba znaków w komórce wynosi do dziesięciu znaków z parametrem automatycznego zwiększania. To automatyczne ustawienie będzie się zmieniać za każdym razem, gdy komentarz zostanie dodany do +1.

Następna komórka to nazwa użytkownika. Ilość znaków - maksymalnie dwieście - trzysta dowolnie wybranych znaków, parametr char. Następnie komórka komentarza – w tej komórce wpiszemy treść samego komentarza. Jeśli chcesz nagrywać duże teksty komentarzy, możesz ustawić parametr tekst - wtedy możesz wpisać po prostu ogromne teksty, więcej niż pięćset tysięcy znaków, lub ustawić parametr tinytext, wtedy zmieści się trochę mniej znaków, ale będzie pracować trochę szybciej.

Jednak w naszym przypadku będziemy pamiętać, że odwiedzający nie będą pisać wielkich tekstów. Dlatego ograniczymy się i zapiszemy dwa tysiące znaków z parametrem varchar, aby zapisać wartości ciągów.

W ostatniej komórce napiszemy datę zarejestrowania tekstu komentarza. Będziemy pisać w formacie liczbowym w sekundach, korzystając z funkcji aktualnej daty i godziny time(); Dla uproszczenia ustawimy funkcję na zmienną $time=time(); I utwórzmy komórkę w bazie danych. Nazwijmy to tak samo jak czas z parametrem int (dla wartości numerycznych). Zapiszmy ilość znaków - lepiej jedenaście (z małym marginesem na przyszłość :-).

Zrzut bazy danych wygląda następująco:

Struktura tabeli `msg` -- UTWÓRZ TABELĘ JEŚLI NIE ISTNIEJE `msg` (`id` int(10) NIE NULL AUTO_INCREMENT, `name` char(250) NIE NULL, `komentarz` varchar(2000) NIE NULL, `time` int(11) NIE NULL, KLUCZ PODSTAWOWY (`id`)) ENGINE=MyISAM DOMYŚLNY CHARSET=utf8 AUTO_INCREMENT=1 ;

To wszystko, utworzono tabelę komentarzy. Teraz piszemy formularz do wpisania komentarza oraz samą procedurę obsługi skryptu. Kod HTML formularza komentarza jest następujący.

W tym poście chcę Ci powiedzieć, jak przenieść wprowadzone dane z formularza do Bazy Danych. Tworzymy więc prosty formularz, w którym będziemy mieli dwa pola: nazwę użytkownika i jego nazwę e-mail:

Twoje imię:
Twój e-mail:


Formularz ten może służyć do rejestracji nowego użytkownika, wysyłania wiadomości, zbierania statystyk lub do czegokolwiek... Ogólnie rzecz biorąc, użytkownik wprowadza w tym formularzu swoje dane: imię i adres e-mail, klika przycisk, a następnie dane przechodzi do skryptu PHP:

$nazwa = $_POST["nazwa"]; $e-mail = $_POST["e-mail"]; $result = mysqli_query("WSTAW WARTOŚCI użytkownika (nazwisko, adres e-mail) („$nazwa”, „$e-mail”)”); if ($result) ( echo "Dane zostały zapisane pomyślnie!"; ) else ( echo "Wystąpił błąd, spróbuj ponownie."; )


Co się dzieje w tym skrypcie? Rozwiążmy to teraz!
Dane wprowadzone w formularzu Metoda POST przejdź do skryptu php (który jest napisany powyżej) i użyj tablica globalna Dane $_POST są formowane w zmienne $name i $email:

$nazwa = $_POST["nazwa"]; $e-mail = $_POST["e-mail"];


Gdy zmienne będą gotowe do wprowadzenia do bazy, tworzymy zapytanie. Ale najpierw twoje skrypty muszą być już połączone z bazą danych; napisałem w tym wątku, jak połączyć się z bazą danych: . Samo żądanie wygląda następująco:

$result = mysqli_query("WSTAW WARTOŚCI użytkownika (nazwisko, adres e-mail) („$nazwa”, „$e-mail”)”);


W tym kodzie wskazaliśmy, że do komórek nazwy i adresu e-mail znajdujących się w tabeli użytkowników zostaną dodane następujące zmienne: $name i $email.
Następnie, jeśli wszystko poszło dobrze, otrzymamy komunikat od warunku:

Dane zostały zapisane pomyślnie!


Jeżeli pojawią się jakieś problemy i dane nie zostaną wprowadzone, otrzymamy komunikat o błędzie:

Wystąpił błąd. Spróbuj ponownie.


To wszystko!

*** *** *** *** ***

W razie potrzeby możemy dodać więcej pól do wpisania informacji, np. musimy dodać pole do wpisania miasta użytkownika. Mamy już gotowy skrypt (napisany powyżej), teraz wystarczy dodać pole Twoje miasto, nazwijmy zmienną: $miasto. I tak dalej w formularzu wprowadzania danych, po:

Twój e-mail:


dodać:

Twoje miasto:


W skrypt php, Po:

$e-mail = $_POST["e-mail"];


dodać:

$miasto = $_POST["miasto"];


I oczywiście dodajemy to również w żądaniu, w ten sposób:

$result = mysqli_query("WSTAW WARTOŚCI użytkownika (imię i nazwisko, adres e-mail, miasto) („$nazwa”, „$e-mail”, „$miasto”)”);


Oto co powinieneś skończyć:
Formularz wejściowy:

Twoje imię:
Twój e-mail:
Twoje miasto:


Scenariusz:

$nazwa = $_POST["nazwa"]; $e-mail = $_POST["e-mail"]; $miasto = $_POST["miasto"]; $result = mysqli_query("WSTAW WARTOŚCI użytkownika (imię i nazwisko, adres e-mail, miasto) („$nazwa”, „$e-mail”, „$miasto”)”); if ($result == true) ( ​​​​echo "Dane zostały zapisane pomyślnie!"; ) else ( echo "Wystąpił błąd, spróbuj ponownie."; )


Jak widać, nic skomplikowanego! W razie potrzeby możesz dodać kolejne pole, i kolejne, i kolejne...

Od autora: och, nie można wydobyć słów z tej piosenki! Możesz je jednak usunąć, zaktualizować lub wstawić inne. Najważniejsze, że słowa są wprowadzane do bazy danych. Dziś opowiemy Wam jak zapisywane są dane w MySQL i jak to zrobić poprawnie, aby piosenka zabrzmiała!

Dodawanie wpisów za pomocą phpMyAdmin

Powłoka phpMyAdmin do administrowania bazą danych MySQL implementuje „lekką” funkcjonalność dodawania nowych rekordów do tabel bazy danych. Ze względu na swoją prostotę jest idealny zarówno dla zielonych „manekinów”, jak i „leniwych” profesjonalistów.

Aby wprowadzić nowe informacje do tabeli należy zalogować się do programu z uprawnieniami administratora. Następnie wybierz z list po lewej stronie niezbędną bazę i stół. Następnie w górnym menu przejdź przez pozycję „Wstaw”.

Następnie, aby dokonać zapisu w bazie MySQL, należy w kolejnym oknie wypełnić pole „Wartość” dla wszystkich kolumn i kliknąć „OK” na dole.

Na powyższym zrzucie ekranu widać, że modyfikowana tabela „Zwierzęta” składa się z dwóch kolumn (pól): id i nazwa. Druga sekcja określa typ każdej kolumny. Musimy tylko wprowadzić wartość w polu nazwy, ponieważ kolumna id jest klucz podstawowy, a podczas tworzenia tabeli ustawiana jest dla niego automatyczna inkrementacja. Oznacza to, że wartość pola id zostanie wygenerowana automatycznie przez MySQL poprzez dodanie 1 do poprzedniej wartości całkowitej.

Aby dowiedzieć się, które pole rekordów danych w MySQL jest kluczem podstawowym, w phpMyAdmin należy przejść z menu (z wybraną tabelą po lewej stronie na liście) do zakładki „Struktura” menu górnego. Poniżej znajduje się opis wszystkich pól tabeli, ich rodzaj i dodatkowe cechy.

Wstawianie danych za pomocą zapytań SQL

Ale phpMyAdmin to tylko powłoka i prawdziwi administratorzy „rozmawiają” z serwerem MySQL za pomocą Strukturalnego Języka Zapytań. Oznacza to, że „rozmawiają” z nim dalej Język SQL. Ponieważ staramy się zostać prawdziwymi profesjonalistami, zagłębimy się trochę w naukę poleceń SQL w ramach rozważanego tematu. Oto zapytanie, po wpisaniu którego w polu „SQL” utworzysz tę samą bazę danych:

UTWÓRZ TABELĘ Zwierzę (id MEDIUMINT NOT NULL AUTO_INCREMENT, nazwa CHAR(30) NOT NULL, PRIMARY KEY (id));

UTWÓRZ TABELĘ Zwierzę (id MEDIUMINT NOT NULL AUTO_INCREMENT ,

nazwa CHAR (30) NIE NULL, KLUCZ PODSTAWOWY (id));

Po utworzeniu tabeli i zapisaniu danych do Baza danych MySQL(poprzez zakładkę „Wstaw”) program poinformuje Cię, że do zwierząt została dodana linia z identyfikatorem o wartości 1, a nieco niżej w oknie edytora wyświetli się kod żądania, który wygenerował dla nas Shell i przesłane do serwera bazy danych.

Kod żądania:

WSTAW DO `my_db1`.`animal` (`id`, `name`) WARTOŚCI (NULL, "Kot");

WSTAW DO `my_db1`. ` zwierzę ` ( ` id ` , ` imię ` ) WARTOŚCI ( NULL , "Kot" );

Przeanalizujmy to bardziej szczegółowo. W SQL do wstawienia nowa linia W tabeli używana jest instrukcja INSERT. Informuje serwer, że określone wartości (VALUES (NULL, 'Cat') należy wstawić do tabeli bazy danych (my_db1 .animal) w polach id i name.

Należy pamiętać, że nie podajemy wartości liczbowej dla kolumny id, ale NULL, ponieważ „włączyliśmy” autouzupełnianie (autoinkrementację) dla tego pola.

Jak wstawić rekord za pomocą PHP

Wszystko, co rozważaliśmy, jest jedynie „preludium” do głównej akcji, w której na scenie pojawia się „Jego Wysokość”. język serwera Programowanie w PHP. To dzięki niemu MySQL jako system DBMS stał się tak powszechny w Internecie.
Większość Internetu opiera się na połączeniu tych dwóch technologii internetowych. sieć światowa. Gdziekolwiek spojrzysz, znajdziesz je wszędzie: w nowoczesnym CMS-ie, „domowo pisanych” silnikach i na serwerze.

Nic dziwnego, że do zapisywania danych MySQL-PHP zapewnia wiele wbudowanych funkcji. Skupimy się jednak na najważniejszych z nich. Oto kod, który dodaje nowe „zwierzę” do tabeli zwierząt. Jeśli się wystarczająco postarasz, możesz w ten sposób zebrać całą menażerię :)

$con_str=mysql_connect("localhost", "root", "", "db1");

if(mysql_connect("localhost","root"))( echo "Witajcie!!"; ) mysql_select_db("db1",$con_str);

$query_str="WSTAWIĆ WARTOŚCI `db1`.`animal` (`id`, `name`) (NULL, "pies")";

mysql_query($query_str);

mysql_close();

$con_str = mysql_connect („localhost”, „root”, „” , „db1” ); if (mysql_connect("localhost", "root")) (;

echo „Witam!” ;

mysql_select_db("db1", $con_str);

$zapytanie_str= "WSTAW DO `db1`.`animal` (`id`, `name`) WARTOŚCI (NULL, "pies")" mysql_query($query_str);

mysql_close();

Ten kod należy wkleić plik PHP i hostuj go po stronie serwera. Za pomocą funkcji mysql_connect() łączymy się z serwerem bazy danych MySQL. Funkcja przyjmuje jako argumenty host, nazwę użytkownika DBMS, hasło i nazwę bazy danych, z którą chcesz się połączyć. Hasło mamy puste, ponieważ korzystamy z serwera zainstalowanego na komputerze lokalnym (klienckim). Aby zademonstrować wszystkie opisane przykłady zapisu do bazy danych MySQL za pomocą za pomocą PHP zastosowaliśmy „zestaw dżentelmena” z Denver. Zawiera

Następnie w bloku logicznym if sprawdziliśmy połączenie z serwerem bazy danych. Następnie w funkcji mysql_select_db() wyznaczamy bazę danych, z którą się połączymy. Wykorzystując funkcję mysql_query() uruchomiliśmy zapytanie SQL zapisane w zmiennej $query_str. I w końcu zamknęli nawiązane połączenie(funkcja mysql_close()). Teraz, jeśli zajrzymy do naszej menażerii (stół ze zwierzętami), znajdziemy tam nowego „zwierzaka”.

Aby zapisać go w MySQL, PHP „uprzejmie” dostarczyło cały niezbędny zestaw funkcji. Najważniejszą rzeczą, która denerwuje początkujących podczas używania SQL w kodzie programu, jest nieprawidłowe pisanie zapytań, naruszenie składni i naprzemienność znaków ucieczki (cudzysłów).

Aby uniknąć pojawienia się dodatkowych „siwych” włosów na głowie, lepiej sprawdzić poprawność pisowni prośby za pomocą za pomocą phpMyAdmina. W tym celu należy umieścić kod SQL w edytorze programu i uruchomić go. Jeśli coś jest nie tak, aplikacja zacznie przeklinać, wyświetli czerwony komunikat i wskaże miejsce wystąpienia błędu.

Jak widać z za pomocą MySQL-a Możesz „zebrać” własną menażerię i poprawnie zmienić słowa dowolnej „piosenki”. A PHP jest idealne do zapisu w bazie danych MySQL, dlatego radzimy Ci nawiązać „bliską” przyjaźń z tym „wspaniałym” językiem programowania!



Jeśli zauważysz błąd, zaznacz fragment tekstu i naciśnij Ctrl+Enter
UDZIAŁ: