მონაცემების დამატება php მონაცემთა ბაზაში. სთხოვეთ SQL-ს ჩანაწერების დამატება და წაშლა. როგორ ჩავსვათ ჩანაწერი დამატებითი დახმარებისთვის PHP

რომლის პოსტიდანაც მინდა ვაღიარო, როგორ გადავიტანოთ მონაცემთა ბაზაში, შეიყვანეთ მონაცემები ფორმაში. ასე რომ, ჩვენ ვქმნით მარტივ ფორმას, სადაც გვექნება ორი ველი: თქვენი სახელი და თქვენი ელექტრონული ფოსტის მისამართი:

Თქვენი სახელი:
Თქვენი ელ. ფოსტა:


ეს ფორმა შეიძლება გამოყენებულ იქნას ახალი მომხმარებლის რეგისტრაციისთვის, ახალი პროდუქტების გასავრცელებლად, სტატისტიკის შესაგროვებლად და ყოველთვის გამოსადეგია... ამ ფორმის გამოყენებით მომხმარებელი შეაქვს თავის მონაცემებს: მის სახელს და ელფოსტას, აჭერს ღილაკს და შემდეგ მონაცემები გადადის php სკრიპტზე:

$name = $_POST["სახელი"]; $email = $_POST["email"]; $result = mysqli_query("INSERT INTO user (სახელი, ელფოსტა) VALUES ("$name", "$email")"); if ($result) (echo "წარმატებით შენახული მონაცემები!"; ) else (echo "ეს იყო ტკბილი, გთხოვთ სცადოთ ხელახლა.";)


რას შეიცავს ეს სკრიპტი? მოდით, ახლავე გავარკვიოთ!
მას შემდეგ რაც შეიყვანთ მონაცემთა ფორმას POST მეთოდით, გადადით php სკრიპტზე (რომელიც ყველაზე გავრცელებული მართლწერაა) და დამატებითი გლობალური $_POST მასივის გამოყენებით, მონაცემები ჩამოყალიბდება შემდეგ სახელებად: $name და $email:

$name = $_POST["სახელი"]; $email = $_POST["email"];


მას შემდეგ, რაც ცვლილებები მზად იქნება ბაზაში დასამატებლად, შეკვეთა ემატება. სანამ შენი სკრიპტები ბრალია, ისინი უკვე დაკავშირდებიან მონაცემთა ბაზასთან, როგორც კი დაუკავშირდები ბაზას, ამ თემაში დავწერე: .თავად კითხვა ასე გამოიყურება:

$result = mysqli_query("INSERT INTO user (სახელი, ელფოსტა) VALUES ("$name", "$email")");


ამ კოდში ჩვენ აღვნიშნეთ, რომ შუა სახელების და ელ.წერილების წინ, მომხმარებლის ცხრილის მსგავსად, დაემატება შემდეგი ცვლილებები: $name და $email.
ახლა, როცა ყველაფერმა კარგად ჩაიარა, გონებიდან ამოვიღებთ ამ ინფორმაციას:

დანი წარმატებით გადაარჩინა!


თუ რაიმე პრობლემა წარმოიქმნება და მონაცემები არ იქნა შეყვანილი, ჩვენ გამოვიღებთ შეტყობინებებს შესწორების შესახებ:

იყო წყალობა, გთხოვთ, გთხოვთ, კიდევ სცადოთ.


Სულ ეს არის!

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

საჭიროების შემთხვევაში, შეგიძლიათ დაამატოთ მეტი ველი ინფორმაციის შესაყვანად, მაგალითად, ჩვენ უნდა დავამატოთ ველი მოვაჭრის მდებარეობის შესაყვანად. ჩვენ უკვე გვაქვს მზა სკრიპტი (მეტი წერა), ახლა უბრალოდ ვამატებთ ველს Შენი ადგილი, დავარქვათ: $ ქალაქი . ასე რომ, მონაცემთა შეყვანის ფორმაში, შემდეგ:

Თქვენი ელ. ფოსტა:


დამატებადი:

Შენი ადგილი:


php სკრიპტებში, შემდეგ:

$email = $_POST["email"];


დამატებადი:

$city = $_POST["ქალაქი"];


ისე, პირველ რიგში დავამატებთ ასე:

$result = mysqli_query("INSERT INTO user (სახელი, ელფოსტა, ქალაქი) VALUES ("$name", "$email", "$city")");


ღერძი გამოჩნდება შედეგად:
შესვლის ფორმა:

Თქვენი სახელი:
Თქვენი ელ. ფოსტა:
Შენი ადგილი:


სკრიპტი:

$name = $_POST["სახელი"]; $email = $_POST["email"]; $city = $_POST["ქალაქი"]; $result = mysqli_query("INSERT INTO user (სახელი, ელფოსტა, ქალაქი) VALUES ("$name", "$email", "$city")"); if ($result == true) (ექო "წარმატებულად დაზოგე ფული!"; ) else (ექო "თქვენ ისაუზმეთ, გთხოვთ სცადოთ ხელახლა.";)


დასაკეცი ვერაფერს ხედავთ! საჭიროების შემთხვევაში, შეგიძლიათ დაამატოთ სხვა ველი, სხვა და სხვა...

კომენტარები გადატანილია ბლოგიდან

სერგი
09/14/2016 დაახლოებით 01:25
Კარგი დღე!
ციტატა ასე: რა არის უმარტივესი გზა მონაცემთა შენახვისა და პროგრამების კორექტირების ორგანიზებისთვის მონაცემთა ბაზის დაზიანების გარეშე? არ მინდა მიბმული ვიყო MySQL-თან ან Access-თან.

ადმინისტრატორი
09/14/2016 დაახლოებით 22:14
Მე დავფრინავ!

თვისებები.პარამეტრები
App.Config
XML ფაილი
სერიალიზაცია
სცადეთ აირჩიოთ რაიმე ამ სიიდან.

მიკოლა
09/16/2016 დაახლოებით 02:28
გამარჯობა, როგორ ვნახო ხედის მწკრივი dataGridVIew-ში dataGridVIew-დან და phpMyAdmin-დან.

PhpMyAdmin? რა დანიშნულება აქვს მონაცემთა ბაზის მქონე რობოტებს, შეგიძლიათ ამიხსნათ?

მიკოლა
09/18/2016 დაახლოებით 02:24
აუცილებელია ხედის მწკრივი ხილული იყოს DataGridView-დან და მონაცემთა ბაზიდან.

ადმინისტრატორი
19.09.2016 დაახლოებით 07:00 საათზე
როგორ წავშალოთ მწკრივი Mysql მონაცემთა ბაზაში - სტატიის დამატებით.

მიკოლა
20.09.2016 დაახლოებით 09:20 საათზე
დიდი.

დიმა
20.09.2016 დაახლოებით 10:24
გამარჯობა, შესაძლებელია თუ არა ამ მეთოდის დანერგვა არა DataGridView, არამედ ComboBox-ის საშუალებით? თუ ასეა, მაშინ რა? დიაკუიუ.

ადმინისტრატორი
09/22/2016 დაახლოებით 03:21
ვიტანნია. კონდახი:

გენადი
22.09.2016 დაახლოებით 18:25 საათზე
რატომ უნდა შევიტანო შემდეგი ტექსტი მონაცემთა ბაზაში System.Windows.Forms.TextBox, Text: ge

To statti os tse (ge) to kintsya tse წერია gene want აღნიშვნების მორგებულ ტექსტში.

ადმინისტრატორი
24.09.2016 დაახლოებით 04:17 საათზე
Shvidshe SQL-ის ყველა არასწორი მართლწერისთვის იწერება, მაგალითად:

textBox1-ში შეიტანება სახელი: გენა.

Sql დაწერს: „ჩასმა ცხრილის სახელების მნიშვნელობებში(textBox1, ..)“; შედეგი: System.Windows.Forms.TextBox

და თქვენ უნდა გაიაროთ: "Insert into table name values(textBox1.Text, ..)";
შედეგი: გენა

გენადი
24.09.2016 დაახლოებით 18:41
უბრალოდ ასეა. დიაკუიუ

სერგი
25.09.2016 დაახლოებით 11:51
Მე დავფრინავ. როგორ განვახორციელოთ მონაცემთა ბაზის დამატება textBox-ის საშუალებით?

ადმინისტრატორი
26.09.2016 დაახლოებით 20:53
პრინციპში ყველა ერთი და იგივე. მაგალითად, ავიღოთ დარჩენილი კონდახი, ვინმეს სჭირდება:

//შექმენით პარამეტრები და დაამატეთ ისინი კოლექციაში cmd.Parameters.AddWithValue("@Name", textBox1.Text); cmd.Parameters.AddWithValue("@LastName", textBox2.Text);

ახლა პარამეტრები: Name და LastName იბრუნებს ტექსტურ ყუთში შეყვანილ მნიშვნელობებს და გადასცემს მათ მონაცემთა ბაზაში.

ლინარა
27.09.2016 დაახლოებით 17:45 საათზე
შუადღე მშვიდობისა, რა არის ხედვის სტრიქონი dataGridVIew-სა და phpMyAdmin-ში?

ადმინისტრატორი
29.09.2016 დაახლოებით 02:06
არ ვიცი როგორ ხედავთ რიგს phpMyAdmin-ში. და dataGridView-ში, მაგალითად, შეგიძლიათ გამოიყენოთ დამატებითი SelectionChanged მეთოდი.

P.S.H.
09/30/2016 დაახლოებით 03:48
2ლინარა:
თუ ნამდვილად გსურთ რიგების რედაქტირება, აიღეთ ინსტრუმენტი a la HediSQL, შეცვალეთ და შეცვალეთ რიგები.

2 ადმინ
Კარგი დღე! გმადლობთ მასალებისთვის - ყველაფერი ძალიან კარგად არის აწყობილი)
კვება: მე ვამატებ მონაცემებს შემდეგი გზით (ტესტის დროს):

String sql = "INSERT INTO მომხმარებლებს (`FIO`, `Tour`, `Count`, `Cost`, `Date`, `Passport`, `Birth`) VALUES ("Kolyan", "Moscow", "1+1" ", 1100, "2011-11-11", "1111 1111", "9.11.1900");";

მონაცემები შეყვანილია ok, მაგრამ მონაცემთა ბაზაში (mysql) კირიული ანბანის ნაცვლად ჩნდება “????”.

Visual Studio ამბობს, რომ System.String არის უნიკოდის თანმიმდევრობა.

ასევე სცადა:

ALTER DATABASE `test` COLLATE "koi8r_general_ci"; ALTER TABLE `users` COLLATE="koi8r_general_ci"; ALTER DATABASE `test` COLATE "utf8_unicode_ci"; ALTER TABLE `users` COLLATE="utf8_unicode_ci";

ალი არ შველის.
რატომ შეიძლება გქონდეთ ბუტი მარჯვნივ? Rizny კოდირება VS და DB? Ან რა?
შეგიძლიათ გამომიგზავნოთ რაიმე წასაკითხი/შესაცვლელი.
დიაკუიუ

ადმინისტრატორი
01.10.2016 დაახლოებით 09:49
ვიტანნია.

მონაცემთა ბაზას (და ცხრილებს) აქვს utf_general_ci

რა სახის მოწყობაა ეს? იქნებ utf8_general_ci?

შექმენით Mysql მონაცემთა ბაზა utf8_general_ci-ს არჩევით, ასე რომ, კირილიცას პრობლემები არ შეექმნათ, რადგან კლიენტი აუცილებლად არ გაუგზავნის შეტყობინებებს სერვერზე.

COLLATION გამოიყენება გასათანაბრებლად და ამ შემთხვევაში მნიშვნელოვანია კოდირება (charset). ამიტომ, საჭიროა ხელახლა კონფიგურაცია, რომ ის სერვერზე დაინსტალირებულია სწორად, მაგალითად utf8-ში და არა latin1-ში.

.net-ით დაკავშირებისას, კონექტორი (კულისებში) იყენებს latin1-ს, რომელიც მოითხოვს პირდაპირ მიუთითოთ utf8 კოდირება კავშირის ხაზში:

MySqlConnection mycon; mycon = new MySqlConnection("server=127.0.0.1;uid=vasya;pwd=123;database=test;charset=utf8;"); //MySqlConnectionStringBuilder: mysqlCSB.CharacterSet = "utf8";

P.S.H.
01.10.2016 დაახლოებით 11:34
შენ ლაპარაკობ, რომ მოგეშალა თავი, utf8_general_ci!
ასე დაეხმარა, Charset = utf8;
ასეთი სიდიადე!

სერგი
02.10.2016 დაახლოებით 11:02
სამუშაო კონდახისთვის აუცილებელია. საჭმელი
შევქმენი ტექსტური ველი, სადაც მსურს შევიტანო მონაცემთა ბაზის IP მისამართი, მაგრამ არ ვიცი როგორ შევიტანო მონაცემები აქ.

String conStr = "server=@textBox2;user=test;" +
"მონაცემთა ბაზა=ტესტი;პაროლი=ტესტი;";
გთხოვთ, მაჩვენოთ, როგორ ჩავსვათ მონაცემები ტექსტური ველებიდან windows-ის ფორმაში ამ დიზაინის გამოყენებით….

ადმინისტრატორი
03.10.2016 დაახლოებით 11:50
"[ელფოსტა დაცულია];მომხმარებელი=...
უმჯობესია შევცვალოთ vikorystvovaty vlastivosti-ის ისეთი რიგი, როგორც ამ statti-ში, ან String.Format() მეთოდში.

OLGA2203
05/15/2017 დაახლოებით 20:14

String Connect = "Server=127.0.0.1;Port=3306;Database=base;Data Source=localhost;user=root;"; MySqlConnection con = New MySqlConnection(Connect); con.Open(); //დააინსტალირეთ კავშირი მონაცემთა ბაზასთან. MySqlCommand cmd = New MySqlCommand(); cmd.CommandText = @”INSERT INTO (ID, კატეგორია, სახელი, სავაჭრო ნიშანი, ფასი, ფოტო, ზომა, ფერი, მასალა, რაოდენობა) ღირებულებები (@pr, @კატეგორია, @სახელი, @TradeMark, @Price, @Photo, @ ზომა, @Color, @Material, @Count)”; cmd.Parameters.AddWithValue(“@pr”, მრიცხველი); cmd.Parameters.AddWithValue(“@Category”, comboBox1.SelectedItem.ToString()); cmd.Parameters.AddWithValue(“@Name”, textBox1.Text); cmd.Parameters.AddWithValue(“@TradeMark”, textBox2.Text); cmd.Parameters.AddWithValue(“@Price”, Convert.ToInt32(textBox4.Text)); cmd.Parameters.AddWithValue(“@Photo”, textBox3.Text); cmd.Parameters.AddWithValue(“@Size”, textBox6.Text); cmd.Parameters.AddWithValue(“@Color”, textBox5.Text); cmd.Parameters.AddWithValue(“@Material”, textBox8.Text); cmd.Parameters.AddWithValue(“@Count”, Convert.ToInt32(textBox7.Text)); cmd.Connection = con; cmd.ExecuteNonQuery(); MessageBox.Show("დამატება წარმატებული იყო", "დამატება წარმატებული იყო", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);

მე ვხედავ შეცდომას "სვეტი 'ID' არ შეიძლება იყოს null", ვხსნი ID განყოფილების დანამატს - ასევე ვწერ მომავალი ნაბიჯის შესახებ და ა.შ.
როდესაც მუდმივ მნიშვნელობებს ვწერ VALUES-ის მკლავებში, მწკრივი ემატება ბაზას.
მითხარი, კეთილო, ვის აქვს პრობლემა? აუცილებელია მონაცემთა ბაზაში ჩაიწეროს იგივე მონაცემები, რომელიც შეყვანილია ფორმის საშუალებით, იგივე მნიშვნელობა

ჩვენ განვიხილავთ ამ სტატისტიკას, ალბათ ზოგიერთ ყველაზე მნიშვნელოვანს SQL მოთხოვნები. ცე დამატებითი ჩანაწერების მოთხოვნა მონაცემთა ბაზის ცხრილიდან. ნატეხები ასე ხშირად ხდება დაამატეთ ახალი ჩანაწერები ცხრილში, და მუშაობს ავტომატურად, შემდეგ ეს მასალა ჭრილობაზეა შეკრული.

იყიდება cob SQL მოთხოვნა მაგიდაზე ახალი ჩანაწერის დასამატებლად:

INSERT INTO მომხმარებლებს (შესვლა, გავლა) მნიშვნელობები ("TestUser", "123456")

ჩანაწერის დამატებისას ბრძანება " ᲩᲐᲓᲔᲗ", შემდეგ ცხრილის დასახელება, რომელშიც ჩასმულია ჩანაწერი. შემდეგ გადადით მრგვალ მკლავებზე და დაასახელეთ ველები, რომელთა შევსებაც გსურთ. შემდეგ კი მრგვალი მკლავები სიტყვების შემდეგ. ღირებულებებიჩვენ ვიწყებთ ჩვენს მიერ არჩეული ველების მნიშვნელობების გადაჭარბებას. ამ ჩანაწერის შემდეგ, ახალი ჩანაწერი გამოჩნდება ჩვენს ცხრილში.

საჭიროა ინოდები განაახლეთ ცხრილის ჩანაწერივისთვისაც მოდის SQL შეკითხვა:

განაახლეთ მომხმარებლები SET login="TestUser2", pass="1234560" WHERE login="TestUser"

ეს უფრო დასაკეცია, მისი დიზაინის გამო" სად"ცოტა ნაკლები მის შესახებ. ახლა წავიდეთ, გუნდი" განახლება", შემდეგ ცხრილის სახელი და შემდეგ" SETჩვენ აღვწერთ ყველა ველის მნიშვნელობას, რომლის შეცვლაც გვინდა. თუ ყველაფერი მარტივია, მაგრამ საკვები შეჩერდა: და როგორი ჩანაწერი უნდა დაიცვას?"ვისთვის არის საჭირო" სად". ამ ველში ვაახლებთ ჩანაწერს, ველს" შესვლა"რას აქვს მნიშვნელობა" TestUserგთხოვთ გაითვალისწინოთ, რომ თუ ასეთი ჩანაწერები მხოლოდ რამდენიმეა, მაშინ აბსოლუტურად ყველაფერი განახლდება! ძალიან მნიშვნელოვანია ამის გაგება, წინააღმდეგ შემთხვევაში თქვენ რისკავთ თქვენი მაგიდის გაფუჭებას.

მოდით ვისაუბროთ ცოტა მეტი " სადთანასწორობის მარტივი შემოწმების გარდა, ასევე არსებობს რამდენიმე უტოლობა, ასევე ლოგიკური ოპერაციები: დაі ან.

განაახლეთ მომხმარებლები SET login = "TestUser2", pass = "1234560" WHERE id< 15 AND login="TestUser"

დანია SQL შეკითხვაგანაახლეთ ეს ჩანაწერები, idმათგან ნაკლებია 15 Іველი" შესვლა"შეიძლება მნიშვნელობა ჰქონდეს" TestUser"იმედი მაქვს, რომ თქვენ მიაღწიეთ დიზაინს" სად"ეს კიდევ უფრო მნიშვნელოვანია. იგივე" სად„ვიკორისტი ზე ჩანაწერების შერჩევა ცხრილიდანდა ეს ის პრობლემაა, რომელიც ყველაზე ხშირად აწყდება მონაცემთა ბაზებთან მუშაობისას.

მე, ბოლოს და ბოლოს, მარტივი SQL მოთხოვნა ცხრილიდან ჩანაწერების დიაპაზონისთვის:

DELETE FROM users WHERE login="TestUser2"

ბრძანების შემდეგ " წაშლა FROM-დან"გადადით ცხრილში, სადაც ჩანაწერების წაშლა გჭირდებათ. შემდეგ აღვწერთ კონსტრუქციას "WHERE". თუ ჩანაწერი მისაღებია აღწერილი გონებისთვის, ის წაიშლება. ისევ მოიპოვეთ პატივისცემა, ჩანაწერების რაოდენობის მიხედვით, დააკმაყოფილეთ გონება შემდეგ" სად„მათი სიძლიერის გამო მაინც შეგიძლიათ გარეთ გასვლა.

საიტის ყველა მოდული ან ვებ დანამატი, სადაც საჭიროა მონაცემების შეყვანა და ჩაწერა (მაგალითად, სახელები, ასაკი, მისამართები და ა.შ.) იყენებს მარტივ ფუნქციას mysql ენაზე INSERT INTO `name_base` (სახელი, მნიშვნელობა1, მნიშვნელობა2). ) VALUES ('Vasya' ,'1','2');

ყველა ცვლილება შედის მონაცემთა ბაზაში იმ მნიშვნელობების მიხედვით, რომლებიც მითითებულია პირველ ჯგუფში. მნიშვნელოვანია კოლექციური სკრიპტის, მონაცემთა ბაზის და კონფიგურაციის ფაილის კოდირება. Bazhano vikoristuvat ყველაზე ფართო კოდირება UTF-8.

არსებობს ორი გზა, რათა შეიქმნას სიმღერა, რომელიც შეიძლება ჩაიწეროს ბაზაზე.

პირველი მეთოდიიმის გამო, რომ ჩვენ არ ვაკონკრეტებთ სახელებს მონაცემთა ბაზის ცხრილის შუაში. ამიტომ, ჩვენ ვართ პასუხისმგებელი კანის ცენტრის ყველა ცვლილების ხელახლა გამოსწორებაზე და იმდენი ცენტრი, რამდენიც მონაცემთა ბაზაშია, იმდენივე ცვლილება შეიძლება ხელახლა გამოსწორდეს ხელებისთვის VALUE მნიშვნელობის შემდეგ.

Მაგალითად:
მონაცემთა ბაზის ცხრილს აქვს მრავალი შუა. ასევე, VALUE (..) ელემენტის შემდეგ, ყველა ცვლილება ხელახლა განხორციელდება ხელახლა. და კიდევ ერთი მომენტი: თუ ცვლილება არ იცვლება, ეს არასავალდებულო პარამეტრი დასაშვებია. შემდეგ ჩვენ უბრალოდ ვწერთ ცარიელ მნიშვნელობებს თათებში "",

"InSERT INTO `name_base` VALUES (NULL, `".$name."`,``,`2`)"; // მესამე ცარიელი მნიშვნელობა იწერება თათებში

ალი ირეცხება მცირე ულუფებით. თუ დაამატებთ ერთ ან ორ ელემენტს მონაცემთა ბაზის ცხრილში, ის კვლავ დაემატება. რადგან ამ მეთოდით, ყველა შუა კერძის ნაზავი შერწყმულია.

სხვა გზათუ აკრიფებთ INSERT INTO `name_base` (...), რათა ხელახლა შეიყვანოთ ყველა ჩანაწერი მონაცემთა ბაზის სახელის შემდეგ. კონდახი უკვე ცოტათი შეხედეს. თუ დაგვავიწყდა, კიდევ ერთხელ დავწეროთ:

"InSERT INTO `name_base`(`name`,`value`,`value2`) VALUES (NULL, `".$name."`,`,`2`)";

აქ ჩვენ ხელახლა გავყიდეთ ყველა com (სახელი, value1, value2). თუ თქვენ დაამატებთ კიდევ ორ ჩანაწერს მონაცემთა ბაზის ცხრილში, თქვენ ვერ შეძლებთ შეცვალოთ შეკითხვის სინტაქსი. მხოლოდ იმიტომ, რომ ჩვენ არ გვჭირდება ერთ სასმელში იგივე დამატებითი ცვლილებების დამატება, რაც გვჭირდება ამ ახალი ქმნილებებისთვის.

ასეთი გაფრთხილება ხშირად ჩნდება საიტზე უმნიშვნელო ცვლილების შემდეგაც კი. მაგალითად, ადმინისტრატორმა დაამატა დამატებითი ანგარიში მონაცემთა ბაზაში, მაგალითად, სტატუსი. მაგრამ სკრიპტის რედაქტორმა ვერ მოახერხა მოდულის შეცვლა, ან უბრალოდ დაავიწყდა. ყველა ამ საიტს აქვს ძალიან რთული სტრუქტურა და გამოსავლის პოვნას შეიძლება დიდი დრო და ენერგია დასჭირდეს. ამიტომ მონაცემთა ბაზაში სხვა მეთოდს ჩავწერ. ამ სახის გადაწყვეტის მისაღწევად, უფრო ხშირად გამოიყენება ვებ-პროგრამები.

Php შესვლა მონაცემთა ბაზაში mysql. პრაქტიკული დუნდულები

ისე, ახლა ჩვენ მივაღწიეთ სამუშაოს არსს მონაცემთა ბაზაში შეკითხვით. ყველაფერი მუშაობს პრაქტიკულ აქციებზე. მოდით შევქმნათ მარტივი სკრიპტი კომენტარების ჩასაწერად, რომელიც ხელს შეუწყობს საიტს.

დამწყებთათვის, მოდით შევქმნათ msg ცხრილი მონაცემთა ბაზაში რამდენიმე შუა ნაბიჯის გამოყენებით. ჩვენ ჯერ ვწერთ id-ის კომენტარებს. შუაში სიმბოლოების რაოდენობა ათამდე სიმბოლოა ავტომატური გაზრდის პარამეტრით. ეს პარამეტრი ავტომატურად იცვლება, როდესაც კანის კომენტარი დაემატება +1-ს.

მოდის მფლობელის სახელის გაყიდვა. სიმბოლოების რაოდენობა – ორამდე – სამასამდე სიმბოლო თქვენი არჩევანით, პარამეტრი char. შემდეგ კომენტარის ველი - ამ ველში შეტანილია თავად კომენტარის ტექსტი. თუ გსურთ კომენტარების დიდი ტექსტების ჩაწერა, მაშინ შეგიძლიათ დააყენოთ ტექსტის პარამეტრი - ასევე შეგიძლიათ შეიყვანოთ უბრალოდ დიდი ტექსტები, ხუთასი ათასზე მეტი სიმბოლო, ან დააყენოთ tinytext პარამეტრი, მაშინ შეგიძლიათ შეიყვანოთ რამდენიმე სიმბოლო ნაკლები, მაგრამ დასჭირდება მხოლოდ რამდენიმე ნაკლები სიმბოლო.

მაგრამ ჩვენი აზრით, ჩვენ პატივს ვცემთ ჩვენს დედებს, რომ ჩვენმა მასწავლებლებმა დიდი ტექსტები არ დაწერონ. გარდა ამისა, ორი ათასი სიმბოლო გაერთიანებულია და ფიქსირდება varchar პარამეტრთან მწკრივის მნიშვნელობების ჩასაწერად.

დარჩენილ შუაში ჩაწერეთ კომენტარის ტექსტში შესვლის თარიღი. ჩაწერეთ რიცხვითი ფორმატით წამებში, დამატებითი ნაკადის თარიღის და საათის ფუნქციის დროის გამოყენებით(); სიმარტივისთვის ფუნქცია დაყენდება $time=time(); ბაზაში შუას ვაკეთებ. კერძოდ დრო int პარამეტრით (რიცხობრივი მნიშვნელობებისთვის). მოდით ჩამოვწეროთ სიმბოლოების რაოდენობა - უფრო თერთმეტს ჰგავს (მცირე ზღვარი მაიდეისთვის :-).

შეურაცხმყოფელი მონაცემების გადაყრა:

ცხრილის სტრუქტურა `msg` -- შექმენით ცხრილი, თუ არ არსებობს `msg` (`id` int(10) NOT NULL AUTO_INCREMENT, `name` char(250) NOT NULL, `comment` varchar(2000) NOT NULL, `time` int(11) NOT NULL, PRIMARY key (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;

ჩვენ შევქმენით ცხრილი კომენტარებისთვის. ახლა ჩვენ ვწერთ ფორმას კომენტარის დასაწერად და თავად სკრიპტს. ფორმის HTML კოდი მომავალი მოვლენების შესახებ კომენტარების გასაკეთებლად.

ავტორის შეხედულება:ეჰ, სიტყვების სიმღერიდან ვერ ამოიღებ! თქვენ ასევე შეგიძლიათ წაშალოთ ისინი, განაახლოთ ისინი ან ჩასვათ სხვები. Golovnya, ისე, რომ სიტყვები შედის მონაცემთა ბაზაში. დღეს ჩვენ ვიცით, როგორ ჩავიწეროთ MySQL მონაცემები და როგორ გავაკეთოთ ეს სწორად ისე, რომ სიმღერა ჟღერდეს!

phpMyAdmin დახმარებისთვის ჩანაწერების დამატება

phpMyAdmin გარსში MySQL DBMS-ის ადმინისტრირებისთვის, განხორციელდა "გაუმჯობესებული" ფუნქციონალობა მონაცემთა ბაზის ცხრილში ახალი ჩანაწერების დასამატებლად. მისი სიმარტივიდან გამომდინარე, იდეალურია როგორც მწვანე „დუმელებისთვის“ და „ყინულის“ პროფესიონალებისთვის.

ცხრილში ახალი ინფორმაციის დასამატებლად გადადით პროგრამაში ადმინისტრატორის უფლებებით. შემდეგ, ბოროტების სიებიდან აირჩიეთ საჭირო მონაცემთა ბაზა და ცხრილი. შემდეგი, ზედა მენიუში, გადადით "ჩასმა" პუნქტში.

ამის შემდეგ, MySQL მონაცემთა ბაზაში ჩანაწერის შესაქმნელად, მომდევნო ფანჯარაში დაიმახსოვრეთ ყველა ჩანაწერი "ღირებულებების" ველში და დააჭირეთ "OK" ბოლოში.

ზემოთ მოცემულ ეკრანის სურათზე ხედავთ, რომ ცხრილი "ცხოველები", რომელიც მოდიფიცირებულია, შედგება ორი სვეტისგან (ველები): id და სახელი. სხვა განყოფილებაში მითითებულია კანის მდგომარეობის ტიპი. ჩვენ მხოლოდ სახელის ველისთვის უნდა შევიტანოთ მნიშვნელობები, რადგან id არის პირველადი გასაღები, ხოლო ავტომატური ზრდა დაყენებულია ახლად შექმნილი ცხრილისთვის. ეს ნიშნავს, რომ id ველის მნიშვნელობები ავტომატურად გენერირებული იქნება MySQL-ის მიერ, 1-ის წამყვანი მთელი რიცხვის რიცხვამდე.

იმის გასარკვევად, თუ რომელი MySQL მონაცემთა ჩანაწერის ველია პირველადი გასაღები, phpMyAdmin-ში გადადით მენიუში (როდესაც თქვენ აირჩევთ შიგთავსის ცხრილს სიაში) ზედა მენიუს ჩანართზე „სტრუქტურა“. აქ შეგიძლიათ იპოვოთ ცხრილის ყველა ველის აღწერა, მათი ტიპი და დამატებითი მახასიათებლები.

მონაცემთა ჩასმა დამატებითი SQL მოთხოვნების გამოყენებით

Ale phpMyAdmin მხოლოდ ჭურვია და ადმინისტრატორები მუშაობენ MySQL სერვერთან დამატებითი ენის სტრუქტურირების მოთხოვნებისთვის. შემდეგ შეგიძლიათ „გააფანტოთ ყურადღება“ ჩემი SQL მისგან. ასე რომ, რადგან ჩვენ ნამდვილი პროფესიონალები ვართ, ჩვენ ცოტა "გაბურღული" ვართ SQL ბრძანებების შემუშავებაში იმ ფარგლებში, რაც განიხილება. ღერძი იკვებება, ამ SQL ველში შეყვანით თქვენ შექმნით იმავე მონაცემთა ბაზას:

CREATE TABLE Animal (ID MEDIUMINT NOT NULL AUTO_INCREMENT, სახელი CHAR(30) NOT NULL, PRIMARY KEY (id));

CREATE TABLE Animal (ID MEDIUMINT NOT NULL AUTO_INCREMENT,

სახელი CHAR (30) NOT NULL, PRIMARY KEY (id));

ცხრილის შექმნისა და მონაცემების MySQL მონაცემთა ბაზაში ჩაწერის შემდეგ (ჩანართის „ჩასმა“), პროგრამა გაცნობებთ, რომ ცხოველებში დამატებულია ID მნიშვნელობების სტრიქონი 1. ხოლო რედაქტორის ფანჯრის ქვემოთ რამდენიმე წუთში გამოჩნდება. აჩვენეთ კოდი, რომელიც გარსმა შექმნა ჩვენთვის და გაგზავნა B D სერვერზე.

კოდი იქნება:

INSERT INTO `my_db1`.`animal` (`id`, `name`) VALUES (NULL, "Cat");

ჩასმა `my_db1`-ში. `ცხოველი` (`id`, `სახელი`) VALUES (NULL, „კატა“);

მოდით წავიკითხოთ მეტი ამის შესახებ. SQL-ში, ცხრილში ახალი მწკრივის ჩასართავად, გამოიყენება INSERT ოპერატორი. ეს აცნობებს სერვერს, რომ მონაცემთა ბაზის ცხრილმა (my_db1 . animal) უნდა ჩასვას მნიშვნელობები (VALUES (NULL, 'Cat')) ID და სახელის ველებში.

გთხოვთ გაითვალისწინოთ, რომ id განყოფილება არ არის რიცხვითი მნიშვნელობა, არამედ NULL, რისთვისაც ჩვენ ჩავრთეთ ავტომატური დასრულება (ავტომატური ზრდა).

როგორ ჩავსვათ ჩანაწერი დამატებითი დახმარებისთვის PHP

ყველაფერი, რასაც ჩვენ ვუყურებთ, არის მხოლოდ „პრელუდია“ მთავარი მოქმედებისა, რომელშიც სცენაზე ჩნდება სერვერის მხრიდან PHP პროგრამირების უმაღლესი დონე. უმეტესწილად, MySQL, როგორც DBMS, შეიმუშავა ასეთი გაფართოება მერეჟში.
ამ ორ ინტერნეტ ტექნოლოგიას შორის კავშირმა შთააგონა მსოფლიოს ინტერნეტის უმეტესობა. სადაც არ უნდა გაიხედოთ, ნახავთ მათ: მიმდინარე CMS-ებში, „სახლში დაწერილ“ ძრავებში და სერვერზე.

გასაკვირი არ არის, რომ MySQL PHP უზრუნველყოფს ბევრ სასარგებლო ფუნქციას მონაცემთა ჩაწერისთვის. ალე მი ზუპინიმოს მათგან ყველაზე მნიშვნელოვანზე. ღერძი არის კოდი, რომელიც ამატებს ახალ „არსებას“ ცხოველების ცხრილში. თუ ძალიან ბევრს ცდილობ, ამ გზით მთელი ცხოველის დაჭერა შეგიძლია :)

$con_str=mysql_connect("localhost", "root", "", "db1"); if(mysql_connect("localhost","root"))(echo "Hello!!"; ) mysql_select_db("db1",$con_str); $query_str="ჩადეთ `db1`.`ცხოველი` (`id`, `სახელი`) VALUES (NULL, "ძაღლი")"; mysql_query ($query_str); mysql_close();

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

if (mysql_connect ("localhost", "root")) (

ექო "გამარჯობა!!" ;

mysql_select_db ("db1", $con_str);

$query_str = "InSERT INTO `db1`.`animal` (`id`, `name`) VALUES (NULL, "ძაღლი")";

mysql_query ($query_str);

mysql_close();

ეს კოდი უნდა იყოს ჩასმული PHP ფაილში და განთავსდეს სერვერის მხარეს.

დამატებითი ფუნქცია mysql_connect() გვაძლევს საშუალებას დავუკავშირდეთ MySQL მონაცემთა ბაზის სერვერს. როგორც არგუმენტები, ფუნქცია იღებს ჰოსტს, DBMS სერვერის სახელს, პაროლს და მონაცემთა ბაზის სახელს, რომელთანაც გჭირდებათ დაკავშირება. ჩვენ შევიყვანეთ ცარიელი პაროლი, ამიტომ ვაინსტალირებთ vikory სერვერს ლოკალურ (კლიენტის) მანქანაზე.

ყველა აპლიკაციის დემონსტრირებისთვის, MySQL მონაცემთა ბაზაში ჩასაწერად დამატებითი PHP-ის გამოყენებით, ჩვენ შევქმენით „ჯენტლმენის აკრიფე“ დენვერიდან. ეს მოიცავს ადგილობრივ Apache სერვერს, MySQL სერვერს, phpMyAdmin და უამრავ სხვა სასარგებლო ფუნქციას პროგრამის კოდის შესაქმნელად და შესამოწმებლად.

შემდეგ, ლოგიკურ ბლოკში, ჩვენ გადავამოწმეთ მონაცემთა ბაზის სერვერთან კავშირის ავთენტურობა. ამის შემდეგ, mysql_select_db() ფუნქციამ განსაზღვრა მონაცემთა ბაზა, რომელსაც ჩვენ დავუკავშირდებით. დამატებითი ფუნქციისთვის mysql_query(), ჩვენ დავიწყეთ SQL მოთხოვნების ძიება, ჩანაწერები $query_str ცვლადში. და ბოლოს, დაინსტალირებული კავშირი დაიხურა (mysql_close() ფუნქცია). ახლა, თუ გადავხედავთ ჩვენს ცხოველთა მაგიდას (ცხოველთა მაგიდა), იქ ახალი „ვიხოვანტი“ დავინახავთ.

ამისათვის მე ჩავწერ მას MySQL PHP-ში „სიყვარულით“ ფუნქციების ყველა საჭირო ნაკრების დამატებით. სამწუხაროა, რატომ უჩივიან ახალბედები პროგრამის კოდში SQL შეცდომებს - მოთხოვნების არასწორი მართლწერა, გატეხილი სინტაქსი და სიმბოლოების არასწორად დაბეჭდვა გაქცევისთვის.

თავზე უცნაური „ნაცრისფერი“ თმის გაჩენის თავიდან ასაცილებლად, უმჯობესია შეამოწმოთ მართლწერის სისწორე phpMyAdmin-ის დახმარებით. ამისათვის მოათავსეთ SQL კოდი პროგრამის რედაქტორში და გაუშვით თქვენს ანგარიშზე. თუ ეს ასე არ არის, მაშინ პროგრამა გააგრძელებს "ყეფს", რის შედეგადაც გამოჩნდება წითელი ფერის შეტყობინება და, ყოველ შემთხვევაში, მოწყალების საჭიროება.

მოგეხსენებათ, MySQL-ის დახმარებით შეგიძლიათ შეაგროვოთ თქვენი ცხოველი და სწორად შეცვალოთ ნებისმიერი სიმღერის სიტყვა. და PHP იდეალურია MySQL მონაცემთა ბაზაში ჩასაწერად, ამიტომ გვსურს დაამყაროთ „მჭიდრო“ მეგობრობა ჩემს „დიდებულ“ პროგრამასთან!