წევრობაზე დაფუძნებული საიტის შექმნა თავიდან რთული ამოცანაა. თუ თქვენ ოდესმე გინდოდათ ამის გაკეთება დამოუკიდებლად, მაშინ დანებდით, როდესაც დაიწყეთ ფიქრი, თუ როგორ აპირებთ ამის გაერთიანებას თქვენი PHP უნარების გამოყენებით, მაშინ ეს სტატია თქვენთვისაა. ჩვენ ვაპირებთ გაგაცნობთ წევრობაზე დაფუძნებული საიტის შექმნის ყველა ასპექტს, პაროლით დაცული წევრების უსაფრთხო ზონით.
მთელი პროცესი შედგება ორი დიდი ნაწილისგან: მომხმარებლის რეგისტრაცია და მომხმარებლის ავტორიზაცია. პირველ ნაწილში ჩვენ ვაპირებთ სარეგისტრაციო ფორმის შექმნას და მონაცემთა MySQL მონაცემთა ბაზაში შენახვას. მეორე ნაწილში ჩვენ შევქმნით შესვლის ფორმას და გამოვიყენებთ მომხმარებლებს უსაფრთხო ზონაში წვდომის საშუალებას.
ჩამოტვირთეთ კოდი
რეგისტრაციის/შესვლის სისტემის სრული კოდის ჩამოტვირთვა შეგიძლიათ ქვემოთ მოცემული ბმულიდან:
კონფიგურაცია და ატვირთვა
ReadMe ფაილი შეიცავს დეტალურ ინსტრუქციებს.
Გააღე source\include\membersite_config.phpშეიყვანეთ ტექსტურ რედაქტორში და განაახლეთ კონფიგურაცია. (მონაცემთა ბაზის შესვლა, თქვენი ვებსაიტის სახელი, თქვენი ელექტრონული ფოსტის მისამართი და ა.შ.).
ატვირთეთ მთელი დირექტორია შინაარსი. შეამოწმეთ register.php ფორმის გაგზავნით.
სარეგისტრაციო ფორმა
მომხმარებლის ანგარიშის შესაქმნელად საჭიროა მომხმარებლისგან მინიმალური რაოდენობის ინფორმაციის შეგროვება. ჩვენ გვჭირდება მისი სახელი, მისი ელექტრონული ფოსტის მისამართი და სასურველი მომხმარებლის სახელი და პაროლი. რა თქმა უნდა, ამ ეტაპზე შეგვიძლია მოვითხოვოთ მეტი ინფორმაცია, მაგრამ გრძელი ფორმა ყოველთვის გამორთვაა. ამიტომ შემოვიფარგლოთ მხოლოდ იმ სფეროებით.
აქ არის რეგისტრაციის ფორმა:
ასე რომ, ჩვენ გვაქვს ტექსტური ველები სახელის, ელ.ფოსტისა და პაროლისთვის. გაითვალისწინეთ, რომ ჩვენ ვიყენებთ უკეთესი გამოყენებისთვის.
ფორმის დადასტურება
ამ ეტაპზე კარგი იდეაა შევიტანოთ რაიმე ფორმის ვალიდაციის კოდი, ასე რომ, ჩვენ დავრწმუნდებით, რომ გვაქვს ყველა საჭირო მონაცემი მომხმარებლის ანგარიშის შესაქმნელად. ჩვენ უნდა შევამოწმოთ არის თუ არა სახელი და ელ. ფოსტა და პაროლი შევსებული და არის თუ არა ელფოსტა სათანადო ფორმატში.
ფორმის წარდგენის დამუშავება
ახლა ჩვენ უნდა დავამუშაოთ წარდგენილი ფორმის მონაცემები.
აქ არის თანმიმდევრობა (იხილეთ ფაილი fg_membersite.php გადმოწერილ წყაროში):
ფუნქცია RegisterUser() ( if(!isset($_POST["გამოგზავნილია"])) ( return false; ) $formvars = array(); if(!$this->ValidateRegistrationSubmission()) ( return false; ) $this- >CollectRegistrationSubmission($formvars); if(!$this->SaveToDatabase($formvars)) ( return false; ) if(!$this->SendUserConfirmationEmail($formvars)) ( return false; ) $this->SendAdminIntimationEmail($ formvars); დაბრუნება true;)
პირველ რიგში, ჩვენ ვამოწმებთ ფორმის გაგზავნას. შემდეგ ვაგროვებთ და „ვასუფთავებთ“ ფორმის წარდგენის მონაცემებს (ეს ყოველთვის გააკეთეთ ელფოსტის გაგზავნამდე, მონაცემთა ბაზაში შენახვამდე და ა.შ.). ფორმის წარდგენის შემდეგ ინახება მონაცემთა ბაზაში. ჩვენ ვუგზავნით ელ.წერილს მომხმარებელს დადასტურების მოთხოვნით. შემდეგ ჩვენ ვაცნობთ ადმინს, რომ მომხმარებელი დარეგისტრირდა.
მონაცემთა ბაზაში შენახვა
ახლა, როდესაც ჩვენ შევიკრიბეთ ყველა მონაცემი, უნდა შევინახოთ იგი მონაცემთა ბაზაში.
აი, როგორ ვინახავთ ფორმის წარდგენის მონაცემთა ბაზაში.
ფუნქცია SaveToDatabase(&$formvars) ( if(!$this->DBLlogin()) ( $this->HandleError("მონაცემთა ბაზის შესვლა ვერ მოხერხდა!"); return false; ) if(!$this->Ensuretable()) ( return false; ) if(!$this->IsFieldUnique($formvars,"email")) ($this->HandleError("ეს ელფოსტა უკვე დარეგისტრირებულია"); return false; ) if(!$this->IsFieldUnique( $formvars,"username")) ( $this->HandleError ("ეს მომხმარებლის სახელი უკვე გამოიყენება. გთხოვთ, სცადოთ სხვა მომხმარებლის სახელი"); დააბრუნეთ false; ) if(!$this->InsertIntoDB($formvars)) ($this- >HandleError ("მონაცემთა ბაზაში ჩასმა ვერ მოხერხდა!"); დაბრუნება false; ) დაბრუნება true; )
გაითვალისწინეთ, რომ თქვენ დააკონფიგურირეთ მონაცემთა ბაზის შესვლის დეტალები Memberite_config.php ფაილში. უმეტეს შემთხვევაში, შეგიძლიათ გამოიყენოთ "localhost" მონაცემთა ბაზის ჰოსტისთვის.
შესვლის შემდეგ ვრწმუნდებით, რომ ცხრილი არსებობს.(თუ არა, სკრიპტი შექმნის საჭირო ცხრილს).
შემდეგ ჩვენ დავრწმუნდებით, რომ მომხმარებლის სახელი და ელფოსტა უნიკალურია. თუ ის უნიკალური არ არის, შეცდომას ვუბრუნებთ მომხმარებელს.
მონაცემთა ბაზის ცხრილის სტრუქტურა
ეს არის მაგიდის სტრუქტურა. CreateTable() ფუნქცია fg_membersite.php ფაილში ქმნის ცხრილს. აქ არის კოდი:
function CreateTable() ( $qry = "შექმენით ცხრილი $this->tablename (". "id_user INT NOT NULL AUTO_INCREMENT ," "სახელი VARCHAR(128) NOT NULL ," "ელფოსტა VARCHAR(64) NOT NULL," " "ტელეფონის_ნომერი VARCHAR(16) NOT NULL ," "username VARCHAR(16) NOT NULL ," "პაროლი VARCHAR(32) NOT NULL ," "დაადასტურეთ კოდი VARCHAR(32)", "PRIMARY KEY (id_user)." ")"; if(( !mysql_query($qry,$this->კავშირი)) ($this->HandleDBError("შეცდომა ცხრილის შექმნისას \nშეკითხვა იყო\n$qry"); დაბრუნება false; ) დაბრუნება true; )
id_user ველი შეიცავს მომხმარებლის უნიკალურ id-ს და ასევე არის ცხრილის ძირითადი გასაღები. გაითვალისწინეთ, რომ ჩვენ დავუშვებთ 32 სიმბოლოს პაროლის ველში. ჩვენ ამას ვაკეთებთ იმიტომ, რომ უსაფრთხოების დამატებითი ზომაა, ჩვენ ვინახავთ პაროლს მონაცემთა ბაზაში დაშიფრული MD5-ის გამოყენებით. გთხოვთ გაითვალისწინოთ, რომ იმის გამო, რომ MD5 არის ცალმხრივი დაშიფვრის მეთოდი, ჩვენ ვერ შევძლებთ პაროლის აღდგენას იმ შემთხვევაში, თუ მომხმარებელი დაივიწყებს მას.
რეგისტრაციის ჩასმა მაგიდაზე
აქ არის კოდი, რომელსაც ვიყენებთ მონაცემთა ბაზაში ჩასასმელად. ჩვენ გვექნება ყველა მონაცემი ხელმისაწვდომი $formvars მასივში.
ფუნქცია InsertIntoDB(&$formvars) ($confirmcode = $this->MakeConfirmationMd5($formvars["email"]); $insert_query = "insert into ".$this->tablename."(სახელი, ელფოსტა, მომხმარებლის სახელი, პაროლი, დადასტურების კოდი) მნიშვნელობები ("" . $this->SanitizeForSQL($formvars["name"]). "", "" . $this->SanitizeForSQL($formvars["email"]) . "", "" $ this->SanitizeForSQL($formvars["მომხმარებლის სახელი"]) . "", "" . md5($formvars["პაროლი"]) . "", "" . $confirmcode . "")"; if(! mysql_query ( $insert_query ,$this->connection)) ( $this->HandleDBError("შეცდომა ცხრილში მონაცემთა ჩასმისას\nquery:$insert_query"); დაბრუნება false; ) return true; )
გაითვალისწინეთ, რომ ჩვენ ვიყენებთ PHP ფუნქციას md5() პაროლის დაშიფვრად მონაცემთა ბაზაში ჩასმამდე.
ასევე, ჩვენ ვაკეთებთ უნიკალურ დადასტურების კოდს მომხმარებლის ელ.ფოსტის მისამართიდან.
ელფოსტის გაგზავნა
ახლა, როდესაც ჩვენ გვაქვს რეგისტრაცია ჩვენს მონაცემთა ბაზაში, ჩვენ გამოგიგზავნით დადასტურების ელ.წერილს მომხმარებელს. მომხმარებელმა უნდა დააჭიროს ბმულს დამადასტურებელ ელფოსტაში რეგისტრაციის პროცესის დასასრულებლად.
ფუნქცია SendUserConfirmationEmail(&$formvars) ($mailer = new PHPMailer(); $mailer->CharSet = "utf-8"; $mailer->AddAddress($formvars["email"],$formvars["name"]) $mailer->Subject = "თქვენი რეგისტრაცია ".$this->sitename; $mailer->From = $this->GetFromAddress(); $confirmcode = urlencode($this->MakeConfirmationMd5($formvars["email" ])); $confirm_url = $this->GetAbsoluteURLFolder()."/confirmreg.php?code=".$confirmcode; $mailer->Body ="გამარჯობა.$formvars["name"]."\r\ n\r\n". "გმადლობთ რეგისტრაციისთვის ".$this->sitename."\r\n". "გთხოვთ დააწკაპუნოთ ქვემოთ მოცემულ ბმულზე თქვენი რეგისტრაციის დასადასტურებლად.\r\n." "$confirm_url\r \n". "\r\n". "პატივისცემით,\r\n". "Webmaster\r\n". $this->sitename; if(!$mailer->Send()) ($this-> HandleError ("რეგისტრაციის დამადასტურებელი ელ. ფოსტის გაგზავნა ვერ მოხერხდა."); დაბრუნება false; ) დაბრუნება true; )
განახლებები
2012 წლის 9 იანვარი
პაროლის აღდგენა/პაროლის შეცვლა ფუნქციები დაემატა
კოდი ახლა გაზიარებულია GitHub-ზე.
Კეთილი იყოს თქვენი დაბრუნება= $fgmembersite->UserFullName(); ?>!
ლიცენზია
კოდი გაზიარებულია LGPL ლიცენზიით. მისი გამოყენება თავისუფლად შეგიძლიათ კომერციულ თუ არაკომერციულ ვებსაიტებზე.
არ არის დაკავშირებული პოსტები.
კომენტარები ამ ჩანაწერზე დახურულია.
ბოლო რამდენიმე წლის განმავლობაში, ვებ ჰოსტინგმა განიცადა დრამატული ცვლილება. ვებ ჰოსტინგის სერვისებმა შეცვალა ვებსაიტების მუშაობის წესი. არსებობს რამდენიმე სახის სერვისი, მაგრამ დღეს ჩვენ ვისაუბრებთ იმ ვარიანტებზე, რომლებიც ხელმისაწვდომია გადამყიდველი ჰოსტინგის პროვაიდერებისთვის. ეს არის Linux Reseller ჰოსტინგი და Windows Reseller Hosting. სანამ გავიგებთ ამ ორს შორის ფუნდამენტურ განსხვავებებს, მოდით გავარკვიოთ რა არის გადამყიდველის ჰოსტინგი.
გადამყიდველის ჰოსტინგი
მარტივი სიტყვებით, გადამყიდველის ჰოსტინგი არის ვებ ჰოსტინგის ფორმა, სადაც ანგარიშის მფლობელს შეუძლია გამოიყენოს თავისი გამოყოფილი ადგილი მყარ დისკზე და გამოყოფილი გამტარობა მესამე მხარის ვებსაიტებზე გადაყიდვის მიზნით. ზოგჯერ, გადამყიდველს შეუძლია აიღოს გამოყოფილი სერვერი ჰოსტინგის კომპანიისგან (Linux ან Windows) ქირავდება და შემდგომ გაუშვას იგი მესამე მხარეებს.
ვებსაიტის მომხმარებლების უმეტესობა არის Linux ან Windows. ეს დაკავშირებულია მუშაობის დროთან. ორივე პლატფორმა უზრუნველყოფს, რომ თქვენი ვებსაიტი დროთა 99% -შია.
1.მორგება
ერთ-ერთი მთავარი განსხვავება Linux Reseller Hostingplan-სა და Windows-ის მიერ მოწოდებულს შორის არის პერსონალიზაცია. მიუხედავად იმისა, რომ თქვენ შეგიძლიათ ექსპერიმენტი ორივე მოთამაშესთან რამდენიმე გზით, Linux ბევრად უფრო კონფიგურირებადია, ვიდრე Windows. ამ უკანასკნელს უფრო მეტი ფუნქციები აქვს, ვიდრე მის კოლეგას და ამიტომაა, რომ ბევრი დეველოპერი და ადმინისტრატორი Linux ძალიან მოსახერხებელია მომხმარებლისთვის.
2. აპლიკაციები
სხვადასხვა გადამყიდველის ჰოსტინგის სერვისებს აქვთ განსხვავებული აპლიკაციები. Linux-ს და Windows-ს აქვს აპლიკაციების საკუთარი მასივი, მაგრამ ამ უკანასკნელს აქვს უპირატესობა, როდესაც საქმე ეხება რიცხვებს და მრავალფეროვნებას. ეს დაკავშირებულია Linux-ის ღია კოდის ბუნებასთან. ნებისმიერ დეველოპერს შეუძლია ატვირთოს თავისი აპლიკაცია Linux პლატფორმაზე და ეს ხდის მას მიმზიდველ ჰოსტინგის პროვაიდერს მილიონობით ვებსაიტის მფლობელისთვის.
თუმცა, გთხოვთ გაითვალისწინოთ, რომ თუ იყენებთ Linux-ს ვებ ჰოსტინგისთვის, მაგრამ ამავე დროს იყენებთ Windows OS-ს, მაშინ ზოგიერთმა აპლიკაციამ შეიძლება უბრალოდ არ იმუშაოს.
3.სტაბილურობა
მიუხედავად იმისა, რომ ორივე პლატფორმა სტაბილურია, Linux Reseller ჰოსტინგი უფრო სტაბილურია ამ ორიდან. ეს არის ღია კოდის პლატფორმა, შეუძლია იმუშაოს რამდენიმე გარემოში. ეს პლატფორმა შეიძლება შეიცვალოს და განვითარდეს დროდადრო.
4. .NET თავსებადობა
ეს არ არის ის, რომ Linux ყველა შესაძლო გზით აღემატება Windows-ს. რაც შეეხება .NET თავსებადობას, Windows იპარავს ყურადღების ცენტრში. ვებ აპლიკაციები მარტივად შეიძლება განვითარდეს Windows ჰოსტინგის პლატფორმაზე.
5. ღირებულების უპირატესობები
ორივე ჰოსტინგის პლატფორმა ხელმისაწვდომია. მაგრამ თუ ფულის უკმარისობას გრძნობთ, მაშინ უნდა აირჩიოთ Linux. ის უფასოა და ამიტომაა, რომ მას ირჩევს ამდენი დეველოპერი და სისტემის ადმინისტრატორი მთელ მსოფლიოში.
6. დაყენების სიმარტივე
Windows-ის დაყენება უფრო ადვილია, ვიდრე მისი ანალოგი. ყველა ნათქვამი და გაკეთებული, Windows კვლავ ინარჩუნებს მომხმარებლის კეთილგანწყობას მთელი ამ წლების განმავლობაში.
7.უსაფრთხოება
აირჩიეთ Linux reseller ჰოსტინგი, რადგან ის უფრო უსაფრთხოა ვიდრე Windows. ეს განსაკუთრებით ეხება იმ ადამიანებს, რომლებიც მართავენ თავიანთ ელექტრონული კომერციის ბიზნესს.
დასკვნა
არჩევანი ორს შორისდამოკიდებული იქნება თქვენს მოთხოვნაზე და ხარჯების მოქნილობაზე. ჰოსტინგის ორივე სერვისს აქვს უნიკალური უპირატესობები. მიუხედავად იმისა, რომ Windows მარტივია დაყენება, Linux არის ხარჯების ეფექტური, უსაფრთხო და უფრო მრავალმხრივი.
ჯერ კიდევ ამ წლის მარტში, მე მქონდა ძალიან ცუდი გამოცდილება მედია კომპანიასთან, რომელმაც უარი თქვა გადამეხადა და უპასუხა ჩემს წერილებს. მათ ჯერ კიდევ ათასობით დოლარის ვალი აქვთ და ჩემში გაბრაზების გრძნობა ყოველდღიურად მეუფლება. თურმე მარტო არ ვარ და ასობით სხვა ვებგვერდის მფლობელი იმავე ნავშია. ეს ერთგვარი თანაბარია ციფრული რეკლამის კურსისთვის.
გულწრფელად რომ გითხრათ, მე მაქვს ეს ბლოგი დიდი ხანია და წარსულში ვტრიალებდი სხვადასხვა სარეკლამო ქსელში. მას შემდეგ, რაც ამ კომპანიისგან სარეკლამო ერთეულები ამოიღეს, რომელმაც გამიჭირა, მე დავბრუნდი პირველ ადგილზე. ასევე უნდა აღვნიშნო, რომ მე არასდროს მომწონდა Googles AdSense პროდუქტი, მხოლოდ იმიტომ, რომ ის რეკლამების "კასრის ქვედა ნაწილის" მსგავსია. არა ხარისხის, არამედ შემოსავლის თვალსაზრისით.
როგორც მე მესმის, თქვენ გინდათ Google-ის რეკლამა თქვენს საიტზე, მაგრამ ასევე გსურთ სხვა მსხვილმა კომპანიებმა და სააგენტოებმაც გააკეთონ ეს. ამ გზით თქვენ მაქსიმალურად გაზრდით მოთხოვნას და შემოსავალს.
ჩემი უარყოფითი გამოცდილების შემდეგ მე მივიღე რეკომენდაცია კომპანია სახელად Newor Media. და თუ გულწრფელი ვარ, თავიდან არ გავყიდე, ძირითადად იმიტომ, რომ მათზე ბევრი ინფორმაცია ვერ ვიპოვე. მე ვიპოვე რამდენიმე ღირსეული მიმოხილვა სხვა საიტებზე და იქ ვინმესთან საუბრის შემდეგ, გადავწყვიტე მეცადა. .მე ვიტყვი, რომ ისინი ძალიან დამეხმარებიან. ყველა ქსელი, ვისთანაც ოდესმე მიმუშავია, საკმაოდ მოკლე იყო ჩემთან პასუხებისა და წასვლის თვალსაზრისით. მათ უპასუხეს ყველა კითხვას და ეს მართლაც წამახალისებელი პროცესი იყო.
მე ვუშვებ რეკლამებს რამდენიმე თვეა და შემოსავალი დაახლოებით შეესაბამება იმას, რასაც სხვა კომპანიასთან ვაკეთებდი. ასე რომ, ნამდვილად ვერ ვიტყვი, არიან თუ არა ისინი სხვებზე ბევრად უკეთესი, მაგრამ სად გამოირჩევიან. არის წერტილი, რომლის დაფიქსირებაც ნამდვილად მინდა. მათთან კომუნიკაცია არ ჰგავს ნებისმიერ სხვა ქსელს, რომელიც მე მიმუშავია. აქ არის შემთხვევა, როდესაც ისინი ნამდვილად განსხვავდებიან:
მათ პირველი გადახდა დროულად მომიტანეს Paypal-ით. მაგრამ იმის გამო, რომ მე არ ვარ შეერთებულ შტატებში (და ეს ხდება ყველასთვის, ჩემი აზრით), მე მივიღე გადასახადი Paypal-დან. მე მივწერე ელფოსტით ჩემს წარმომადგენელს ამის შესახებ და ვკითხე, იყო თუ არა გზა ამის თავიდან ასაცილებლად მომავალში.
მათ თქვეს, რომ გადასახადს ვერ აირიდნენ. მაგრამ რომ ისინი ანაზღაურებენ ყველა საფასურს.... უახლესი გადახდის ჩათვლით! არა მხოლოდ ეს, არამედ ანაზღაურება მიიღეს 10 წუთში!როდის შეგეძლოთ მსგავსი მოთხოვნის გაკეთება „ფინანსთა დეპარტამენტში“ გადაგზავნის გარეშე, რომ აღარასოდეს გიპასუხოთ.
მთავარი ის არის, რომ მე მიყვარს ეს კომპანია. მე შეიძლება შევძლო სხვაგან მეტის გაკეთება, ნამდვილად არ ვარ დარწმუნებული, მაგრამ მათ ჰყავთ გამომცემელი ჩემთან ერთად. ძალიან მნიშვნელოვანი კლიენტი, როცა მათ ვესაუბრები. ეს ნამდვილად სუფთა ჰაერია ინდუსტრიაში, რომელიც მომწიფებულია თაღლითობით და უპასუხოდ.
მიკროკომპიუტერები, რომლებიც შეიქმნა Raspberry Pi Foundation-ის მიერ 2012 წელს, უაღრესად წარმატებული იყო მცირეწლოვან ბავშვებში კრეატიულობის დონის ამაღლებაში და ამ ბრიტანულმა კომპანიამ დაიწყო სტარტაპ პროგრამების სწავლის კოდირების შეთავაზება, როგორიცაა pi-top an Kano. ახლა არის ახალი სტარტაპი, რომელიც იყენებს Pi ელექტრონიკას და მოწყობილობა ცნობილია როგორც Pip, ხელის კონსოლი, რომელიც გთავაზობთ სენსორულ ეკრანს, მრავალ პორტს, საკონტროლო ღილაკებს და დინამიკებს. მოწყობილობის იდეა არის ახალგაზრდების ჩართვა სათამაშო მოწყობილობით, რომელიც არის რეტრო, მაგრამ ასევე შესთავაზებს კოდის სწავლის გამოცდილებას ვებ პლატფორმის საშუალებით.
საოცარი პროგრამული პლატფორმა, რომელსაც სთავაზობენ Pip-ს, შესთავაზებს კოდირების დაწყებას Python-ში, HTML/CSS-ში, JavaScript-ში, Lua-სა და PHP-ში. მოწყობილობა გვთავაზობს ნაბიჯ-ნაბიჯ გაკვეთილებს, რათა ბავშვებს დაიწყონ კოდირება და საშუალებას აძლევს მათ, LED-ები გაანათონ. მიუხედავად იმისა, რომ პიპი ჯერ კიდევ პროტოტიპია, ის აუცილებლად იქნება დიდი დარტყმა ინდუსტრიაში და ჩაერთვება ბავშვებს, რომლებსაც აქვთ დაინტერესებული კოდირება და მიაწვდიან მათ განათლებას და რესურსებს, რომლებიც საჭიროა პატარა ასაკში კოდირების დასაწყებად.
კოდირების მომავალი
კოდირებას დიდი მომავალი აქვს და მაშინაც კი, თუ ბავშვები არ გამოიყენებენ კოდირებას კარიერად, მათ შეუძლიათ ისწავლონ კოდირების სწავლა ამ ახალი მოწყობილობით, რაც ამარტივებს, ვიდრე ოდესმე. Pip-თან ერთად, კოდირების ყველაზე ახალგაზრდა მოყვარულებიც კი ისწავლიან სხვადასხვა ენებს და კარგ გზაზე იქნებიან საკუთარი კოდების, საკუთარი თამაშების, საკუთარი აპების და სხვათა შექმნის გზაზე. ეს არის ელექტრონული ეპოქის მომავალი და პიპი საშუალებას აძლევს კოდირების ძირითადი სამშენებლო ბლოკების ათვისებას.კომპიუტერული მეცნიერება გახდა განათლების მნიშვნელოვანი ნაწილი და ისეთი მოწყობილობებით, როგორიცაა ახალი Pip, ბავშვებს შეუძლიათ დაიწყონ განათლების გაუმჯობესება სახლში, გართობის დროს. კოდირება ბევრად სცილდება უბრალოდ ვებსაიტების ან პროგრამული უზრუნველყოფის შექმნას. ის შეიძლება გამოყენებულ იქნას ქალაქში უსაფრთხოების გასაძლიერებლად, სამედიცინო სფეროში კვლევების დასახმარებლად და მრავალი სხვა. ვინაიდან ჩვენ ახლა ვცხოვრობთ სამყაროში, სადაც დომინირებს პროგრამული უზრუნველყოფა, კოდირება არის მომავალი და მნიშვნელოვანია ყველა ბავშვისთვის, სულ მცირე, ჰქონდეს საბაზისო გაგება, თუ როგორ მუშაობს ის, მაშინაც კი, თუ ისინი არასოდეს გამოიყენებენ ამ უნარებს კარიერად. მომავლის თვალსაზრისით, კოდირება ყოველდღიური ცხოვრების მნიშვნელოვანი კომპონენტი იქნება. ეს იქნება მსოფლიოს ენა და კომპიუტერების არ ცოდნამ ან როგორ მუშაობს ისინი, შეიძლება ისეთივე ძნელი დასაძლევი იყოს, როგორც გაუნათლებლობა.
კოდირება ასევე უზრუნველყოფს დიდ ცვლილებებს სათამაშო სამყაროში, განსაკუთრებით მაშინ, როდესაც საქმე ეხება ონლაინ თამაშებს, მათ შორის ონლაინ კაზინოებზე წვდომას. იმის სანახავად, თუ როგორ გააუმჯობესა კოდირებამ უკვე სათამაშო სამყარო, გადახედეთ რამდენიმე რეიტინგულ კაზინოს საიტს, რომლებიც ეყრდნობიან კოდირებას. სწრაფად გადახედეთ მას და ნახეთ, თუ როგორ შეუძლია კოდირებას წარმოადგინოს რეალისტური გარემო ონლაინ რეჟიმში.
როგორ ართმევს პიპი ბავშვებს
რაც შეეხება კოდირების სწავლის შესაძლებლობას, ბავშვებს ბევრი ვარიანტი აქვთ. არსებობს მრავალი მოწყობილობა და ტექნიკის გიზმო, რომელთა შეძენაც შესაძლებელია, მაგრამ Pip განსხვავებული მიდგომა აქვს მათი მოწყობილობით. მოწყობილობის პორტაბელურობა და სენსორული ეკრანი უპირატესობას ანიჭებს ბაზარზე არსებულ სხვა კოდირების მოწყობილობებს. Pip სრულად თავსებადია ელექტრონულ კომპონენტებთან, გარდა Raspberry Pi HAT სისტემისა. მოწყობილობა იყენებს სტანდარტულ ენებს და აქვს ძირითადი ხელსაწყოები და შესანიშნავი მოწყობილობაა ნებისმიერი დამწყები კოდირებისთვის. მიზანია მოიხსნას ნებისმიერი ბარიერი იდეასა და შემოქმედებას შორის და ინსტრუმენტები დაუყოვნებლივ იყოს ხელმისაწვდომი გამოსაყენებლად. Pip-ის კიდევ ერთი დიდი უპირატესობა ის არის, რომ ის იყენებს SD ბარათს, ამიტომ მისი გამოყენება შესაძლებელია როგორც დესკტოპ კომპიუტერად, როდესაც ის დაკავშირებულია მონიტორთან და მაუსთან.Pip მოწყობილობა დაეხმარებოდა ბავშვებს და დაინტერესებულ დამწყებ დამწერებს ენთუზიაზმით სწავლაში და კოდირების პრაქტიკაში. ამოცანების შესრულებისა და პრობლემების გადაჭრის კომბინაციის შეთავაზებით, მოწყობილობა აუცილებლად ჩაერთვება ახალგაზრდა თაობას. შემდეგ მოწყობილობა საშუალებას აძლევს ამ ახალგაზრდა კოდერებს გადავიდნენ კოდირების უფრო მოწინავე დონეზე სხვადასხვა ენაზე, როგორიცაა JavaScript და HTML/CSS. იმის გამო, რომ მოწყობილობა იმეორებს სათამაშო კონსოლს, ის დაუყოვნებლივ მიიპყრობს ბავშვების ყურადღებას და ჩაერთვება მათ მცირე ასაკში კოდირების შესახებ. მას ასევე მოყვება რამდენიმე წინასწარ ჩატვირთული თამაში ყურადღების შესანარჩუნებლად, როგორიცაა Pac-Man და Minecraft.
მომავალი ინოვაციები
მომავალი ინოვაცია დიდწილად დამოკიდებულია ბავშვის ამჟამინდელ უნარზე კოდირებისა და პროცესის საერთო გაგებაზე. როდესაც ბავშვები ადრეულ ასაკში სწავლობენ კოდირებას ისეთი მოწყობილობების გამოყენებით, როგორიცაა ახალი Pip, ისინი შეიძენენ უნარებსა და ცოდნას, რათა შექმნან საოცარი რამ მომავალში. ეს შეიძლება იყოს ახალი თამაშების ან აპების დანერგვა ან თუნდაც იდეები, რომლებიც შეიძლება გაცოცხლდეს სამედიცინო კვლევებისა და მკურნალობის დასახმარებლად. უსასრულო შესაძლებლობებია. ვინაიდან ჩვენს მომავალს გააკონტროლებს პროგრამული უზრუნველყოფა და კომპიუტერები, ახალგაზრდობის დაწყება საუკეთესო გზაა, რის გამოც ახალი Pip მიმართულია ახალგაზრდა ხალხისკენ. კონსოლის მოწყობილობის შეთავაზებით, რომელსაც შეუძლია თამაშების თამაში კოდირების უნარების სწავლებისას, საზოგადოების ახალგაზრდა წევრები კარგ გზაზე არიან გახდნენ პროგრამული უზრუნველყოფის შემქმნელები მომავალში, რომელიც შეცვლის მთელ ჩვენს ცხოვრებას. ეს მხოლოდ დასაწყისია, მაგრამ ეს არის ის, რასაც მილიონობით ბავშვი მთელ მსოფლიოში იწყებს სწავლას და დაუფლებას. Pip-ის მსგავსი მოწყობილობების გამოყენებით, კოდირების საფუძვლები დაფარულია და ბავშვები სწრაფად ისწავლიან კოდირების სხვადასხვა ენებს, რომლებსაც შეუძლიათ საოცარ ბილიკებზე გასვლა ზრდასრულ ასაკში შესვლისას.გაკვეთილი დამწყებთათვის! არ აქვს მნიშვნელობა სად შედიხართ ინტერნეტში, არსებობს ძირითადი ელემენტი, რომელსაც თითქმის ყველგან ნახავთ - მომხმარებლის რეგისტრაცია. გჭირდებათ თქვენი მომხმარებლების რეგისტრაცია უსაფრთხოებისთვის თუ უბრალოდ დამატებითი ფუნქციისთვის, არ არსებობს მიზეზი, რომ არ გააკეთოთ ეს ამ მარტივი გაკვეთილით. ამ გაკვეთილში ჩვენ განვიხილავთ მომხმარებლის მენეჯმენტის საფუძვლებს, დამთავრდება მარტივი წევრების არეალით, რომელიც შეგიძლიათ დანერგოთ საკუთარ ვებსაიტზე.
თუ გჭირდებათ დამატებითი დახმარება ან გსურთ მალსახმობი, შეამოწმეთ PHP სერვისის პროვაიდერების სპექტრი Envato Studio-ზე. ამ გამოცდილ დეველოპერებს შეუძლიათ დაგეხმაროთ ყველაფერში, შეცდომების სწრაფი გამოსწორებიდან დაწყებული მთელი აპლიკაციის ნულიდან შემუშავებით. ასე რომ, უბრალოდ დაათვალიერეთ პროვაიდერები, წაიკითხეთ მიმოხილვები და რეიტინგები და შეარჩიეთ თქვენთვის შესაფერისი.
შესავალი
ამ გაკვეთილში ჩვენ განვიხილავთ მომხმარებლის მართვის სისტემის შექმნის თითოეულ საფეხურს, მომხმარებელთა შორის პირადი შეტყობინებების სისტემასთან ერთად. ჩვენ ვაპირებთ ამის გაკეთებას PHP-ის გამოყენებით, MySQL მონაცემთა ბაზაში მომხმარებლის ყველა ინფორმაციის შესანახად. ეს გაკვეთილი გამიზნულია PHP-ის აბსოლუტური დამწყებთათვის, ამიტომ წინასწარი ცოდნა არ არის საჭირო - სინამდვილეში, შეიძლება ცოტა მოგწყინდეთ, თუ გამოცდილი PHP მომხმარებელი ხართ!
ეს გაკვეთილი გამიზნულია, როგორც ძირითადი შესავალი Sessions-ში და მონაცემთა ბაზების გამოყენება PHP-ში. მიუხედავად იმისა, რომ ამ გაკვეთილის საბოლოო შედეგი შეიძლება მაშინვე არ მოგეჩვენოთ გამოსადეგი, უნარები, რომლებსაც ამ გაკვეთილიდან მიიღებთ, საშუალებას მოგცემთ გააგრძელოთ საკუთარი წევრობის სისტემის შექმნა; საკუთარი საჭიროებების დასაკმაყოფილებლად.
სანამ ამ გაკვეთილს დაიწყებდეთ, დარწმუნდით, რომ ხელთ გაქვთ შემდეგი ინფორმაცია:
- მონაცემთა ბაზის ჰოსტის სახელი- ეს არის სერვერი, რომელზეც განთავსებულია თქვენი მონაცემთა ბაზა, უმეტეს შემთხვევაში ეს იქნება უბრალოდ "localhost".
- მონაცემთა ბაზის სახელი, მონაცემთა ბაზის მომხმარებლის სახელი, მონაცემთა ბაზის პაროლი- ამ გაკვეთილის დაწყებამდე თქვენ უნდა შექმნათ MySQL მონაცემთა ბაზა, თუ გაქვთ შესაძლებლობა, ან გაქვთ ინფორმაცია არსებულ მონაცემთა ბაზასთან დასაკავშირებლად. ეს ინფორმაცია საჭიროა მთელი გაკვეთილის განმავლობაში.
თუ თქვენ არ გაქვთ ეს ინფორმაცია, მაშინ თქვენს ჰოსტინგის პროვაიდერს უნდა შეეძლოს ეს მოგაწოდოთ.
ახლა, როდესაც ჩვენ არ გვაქვს ფორმალობები, დავიწყოთ გაკვეთილი!
ნაბიჯი 1 - საწყისი კონფიგურაცია
მონაცემთა ბაზის დაყენება
როგორც შესავალშია ნათქვამი, თქვენ გჭირდებათ მონაცემთა ბაზა, რომ გააგრძელოთ გაკვეთილის ამ პუნქტის გასვლა. დასაწყისისთვის ჩვენ ვაპირებთ შევქმნათ ცხრილი ამ მონაცემთა ბაზაში ჩვენი მომხმარებლის ინფორმაციის შესანახად.
ცხრილი, რომელიც ჩვენ გვჭირდება, შეინახავს ჩვენს მომხმარებლის ინფორმაციას; ჩვენი მიზნებისთვის ჩვენ გამოვიყენებთ მარტივ ცხრილს, მაგრამ ადვილი იქნება დამატებითი ინფორმაციის შენახვა დამატებით სვეტებში, თუ ეს არის ის, რაც გჭირდებათ. ჩვენს სისტემაში გვჭირდება შემდეგი ოთხი სვეტი:
- Მომხმარებლის იდენტიფიკაცია (Მთავარი გასაღები)
- მომხმარებლის სახელი
- პაროლი
- Ელექტრონული მისამართი
მონაცემთა ბაზის თვალსაზრისით, ა Მთავარი გასაღებიარის ველი, რომელიც ცალსახად განსაზღვრავს მწკრივს. ამ შემთხვევაში, მომხმარებლის ID იქნება ჩვენი ძირითადი გასაღები. ვინაიდან ჩვენ გვინდა, რომ ეს გაიზარდოს ყოველ ჯერზე, როდესაც მომხმარებელი დარეგისტრირდება, ჩვენ გამოვიყენებთ სპეციალურ MySQL ვარიანტს - auto_increment .
SQL მოთხოვნა ჩვენი ცხრილის შესაქმნელად მოყვება ქვემოთ და ჩვეულებრივ განხორციელდება phpMyAdmin-ის "SQL" ჩანართში.
შექმენით ცხრილი `მომხმარებლები` (`მომხმარებლის ID` INT(25) NOT NULL AUTO_INCREMENT PRIMARY KEY , `მომხმარებლის სახელი` VARCHAR(65) NOT NULL , `პაროლი` VARCHAR(32) NOT NULL , `ელფოსტის მისამართი` VARCHAR(NUL2)
საბაზისო ფაილის შექმნა
ჩვენი პროექტის შექმნის გასამარტივებლად, ჩვენ ვაპირებთ შევქმნათ საბაზისო ფაილი, რომელიც შეგვიძლია შევიტანოთ ჩვენს მიერ შექმნილ თითოეულ ფაილში. ეს ფაილი შეიცავს მონაცემთა ბაზის კავშირის ინფორმაციას, კონფიგურაციის გარკვეულ ცვლადებთან ერთად, რომლებიც დაგვეხმარება გზაში.
დაიწყეთ ახალი ფაილის შექმნით: base.php და შეიყვანეთ მასში შემდეგი კოდი:
მოდით, გადავხედოთ რამდენიმე ამ სტრიქონს? აქ არის რამდენიმე ფუნქცია, რომელიც ჩვენ გამოვიყენეთ და ჯერ არ ავუხსენით, ასე რომ, მოდით, სწრაფად გადავხედოთ მათ და გავიგოთ - თუ თქვენ უკვე გესმით PHP-ის საფუძვლები, შეგიძლიათ გამოტოვოთ ეს განმარტება.
სესიის_დაწყება();
ეს ფუნქცია იწყებს სესიას ახალი მომხმარებლისთვის და მოგვიანებით ამ გაკვეთილზე ჩვენ ვინახავთ ინფორმაციას ამ სესიაზე, რათა მოგვეცეს საშუალება ამოვიცნოთ უკვე შესული მომხმარებლები. თუ სესია უკვე შექმნილია, ეს ფუნქცია ამოიცნობს ამას და გადაიტანს ამ სესიას შემდეგ გვერდზე.
Mysql_connect($dbhost, $dbuser, $dbpass) ან die("MySQL შეცდომა: " . mysql_error()); mysql_select_db($dbname) ან die("MySQL შეცდომა: " . mysql_error());
თითოეული ეს ფუნქცია ასრულებს ცალკეულ, მაგრამ დაკავშირებულ დავალებას. mysql_connect ფუნქცია აკავშირებს ჩვენს სკრიპტს მონაცემთა ბაზის სერვერთან იმ ინფორმაციის გამოყენებით, რომელიც ჩვენ მას ზემოთ მივეცით, ხოლო mysql_select_db ფუნქცია შემდეგ ირჩევს, რომელი მონაცემთა ბაზა გამოიყენოს სკრიპტთან ერთად. თუ რომელიმე ფუნქცია ვერ სრულდება, die ფუნქცია ავტომატურად ჩაერევა და შეაჩერებს სკრიპტის დამუშავებას - ნებისმიერ მომხმარებელს დატოვებს შეტყობინებას, რომ იყო MySQL შეცდომა.
ნაბიჯი 2 - დაბრუნება წინა მხარეს
რა უნდა გავაკეთოთ პირველ რიგში?
ჩვენს გვერდზე ყველაზე მნიშვნელოვანი ელემენტია PHP-ის პირველი ხაზი; ეს სტრიქონი მოიცავს ფაილს, რომელიც ჩვენ შევქმენით ზემოთ (base.php) და არსებითად მოგვცემს საშუალებას მივიღოთ რაიმე ამ ფაილიდან ჩვენს მიმდინარე ფაილში. ჩვენ ამას გავაკეთებთ PHP კოდის შემდეგი ხაზით. შექმენით ფაილი სახელად index.php და განათავსეთ ეს კოდი ზედა.
დაიწყეთ HTML გვერდი
პირველი, რასაც ჩვენ ვაპირებთ გავაკეთოთ ჩვენი ფრონტენდისთვის, არის გვერდის შექმნა, სადაც მომხმარებლებს შეუძლიათ შეიყვანონ თავიანთი დეტალები შესვლისთვის, ან თუ ისინი უკვე შესული არიან გვერდზე, სადაც მათ შეუძლიათ აირჩიონ ის, რისი გაკეთებაც სურთ. ამ ტუტორიალში მე ვარაუდობ, რომ მომხმარებლებს აქვთ საბაზისო ცოდნა იმის შესახებ, თუ როგორ მუშაობს HTML/CSS და ამიტომ არ ვაპირებ ამ კოდის დეტალურად ახსნას; ამ მომენტში ეს ელემენტები არ იქნება სტილიზებული, მაგრამ ჩვენ შევძლებთ ამის შეცვლას მოგვიანებით, როდესაც შევქმნით ჩვენს CSS სტილის ფურცელს.
ჩვენ მიერ ახლახან შექმნილი ფაილის გამოყენებით (index.php), შეიყვანეთ შემდეგი HTML კოდი PHP-ის ხაზის ქვემოთ, რომელიც უკვე შევქმენით.
რა ვაჩვენოთ მათ?
სანამ გვერდის დანარჩენ ნაწილს გამოვაქვეყნებთ, გვაქვს რამდენიმე კითხვა, რომელიც უნდა დავუსვათ საკუთარ თავს:
- მომხმარებელი უკვე შესულია?
- დიახ- ჩვენ უნდა ვაჩვენოთ მათ გვერდი, სადაც მათ უნდა აირჩიონ.
- არა
- დიახ- ჩვენ უნდა შევამოწმოთ მათი დეტალები და თუ სწორია შევიყვანთ მათ საიტზე.
- არა- ვაგრძელებთ შემდეგ კითხვას.
ეს კითხვები, ფაქტობრივად, იგივე კითხვებია, რომელთა დანერგვასაც ვაპირებთ ჩვენს PHP კოდში. ჩვენ ვაპირებთ ამის გაკეთებას if განცხადებების სახით. თქვენს ახალ ფაილში არაფრის შეყვანის გარეშე, მოდით შევხედოთ ლოგიკას, რომლის გამოყენებასაც ვაპირებთ პირველ რიგში.
დამაბნეველად გამოიყურება, არა? მოდით, დავყოთ ის უფრო პატარა ნაწილებად და გადავხედოთ მათ სათითაოდ.
If(!empty($_SESSION["LoggedIn"]) && !empty($_SESSION["მომხმარებლის სახელი"])) ( // მიეცით მომხმარებელს წვდომა მთავარ გვერდზე )
როდესაც მომხმარებელი შემოდის ჩვენს ვებსაიტზე, ჩვენ ვაპირებთ მისი ინფორმაციის შენახვას სესიაზე - ამის შემდეგ ნებისმიერ მომენტში ჩვენ შეგვიძლია მივიღოთ ეს ინფორმაცია სპეციალურ გლობალურ PHP მასივში - $_SESSION . ჩვენ ვიყენებთ ცარიელი ფუნქციის შესამოწმებლად ცარიელია თუ არა ცვლადი, ოპერატორთან ერთად! მის წინ. ამიტომ ჩვენ ვამბობთ:
თუ ცვლადი $_SESSION["LoggedIn"] არ არის ცარიელი და $_SESSION["მომხმარებლის სახელი"] ცარიელი, შეასრულეთ კოდის ეს ნაწილი.
შემდეგი ხაზი მუშაობს იმავე გზით, მხოლოდ ამჯერად $_POST გლობალური მასივის გამოყენებით. ეს მასივი შეიცავს ნებისმიერ მონაცემს, რომელიც გაიგზავნა შესვლის ფორმიდან, რომელსაც მოგვიანებით შევქმნით ამ სახელმძღვანელოში. საბოლოო ხაზი შესრულდება მხოლოდ იმ შემთხვევაში, თუ არცერთი წინა განცხადება არ არის დაკმაყოფილებული; ამ შემთხვევაში ჩვენ ვუჩვენებთ მომხმარებელს შესვლის ფორმას.
ასე რომ, ახლა, როდესაც ჩვენ გვესმის ლოგიკა, მოდით მივიღოთ გარკვეული შინაარსი ამ განყოფილებებს შორის. თქვენს index.php ფაილში შეიყვანეთ ქვემოთ მოცემული ის, რაც უკვე გაქვთ.
წევრის ტერიტორია
=$_SESSION["EmailAddress"]?>
.
წარმატებები"; ექო" ჩვენ ახლა გადაგამისამართებთ წევრების ზონაში.
"; ექო" ";) სხვა (ექო"შეცდომა
"; ექო"უკაცრავად, თქვენი ანგარიში ვერ მოიძებნა. გთხოვთ დააწკაპუნეთ აქ ხელახლა საცდელად.
";)) სხვა (?>წევრის შესვლა
გმადლობთ სტუმრობისთვის! გთხოვთ ან შეხვიდეთ ქვემოთ, ან დააწკაპუნეთ აქ რეგისტრაციისთვის.
ვიმედოვნებთ, რომ პირველი და ბოლო კოდის ბლოკები დიდად არ დაგაბნევთ. ის, რაშიც ჩვენ ნამდვილად უნდა ჩავჭედოთ, არის ის, რისთვისაც თქვენ ყველა მოხვედით ამ სახელმძღვანელოში - PHP კოდი. ჩვენ ახლა განვიხილავთ მეორე განყოფილებას თითო სტრიქონზე და მე აგიხსნით რისთვის არის განკუთვნილი კოდის თითოეული ბიტი აქ.
$username = mysql_real_escape_string($_POST["მომხმარებლის სახელი"]); $პაროლი = md5(mysql_real_escape_string($_POST["პაროლი"]));
ამისთვის ორი ფუნქციაა საჭირო. პირველ რიგში, mysql_real_escape_string - ძალიან სასარგებლო ფუნქცია მონაცემთა ბაზის შეყვანის გასასუფთავებლად. ეს არ არის უვნებელი ღონისძიება, მაგრამ ეს დაიცავს მავნე ჰაკერების უმრავლესობას იქიდან, არასასურველი ნაწილების ამოღებით, რაც შეტანილია ჩვენს სისტემაში შესვლის ფორმაში. მეორეც, md5. აქ შეუძლებელი იქნება დეტალების შესწავლა, მაგრამ ეს ფუნქცია უბრალოდ შიფრავს ყველაფერს, რაც მას გადაეცემა - ამ შემთხვევაში მომხმარებლის პაროლს - რათა ცნობისმოყვარე თვალებმა არ წაიკითხონ.
$checklogin = mysql_query("SELECT * FROM users WHERE მომხმარებლის სახელი = "".$username." AND Password = "".$პაროლი."""); if(mysql_num_rows($checklogin) == 1) ( $row = mysql_fetch_array ($checklogin); $email = $row ["ელფოსტის მისამართი"]; $_SESSION ["მომხმარებლის სახელი"] = $username; $_SESSION["ელფოსტის მისამართი"] = $email;$_SESSION["LoggedIn"] = 1;
აქ ჩვენ გვაქვს ჩვენი შესვლის კოდის ბირთვი; პირველ რიგში, ჩვენ ვაწარმოებთ შეკითხვას ჩვენს მონაცემთა ბაზაში. ამ მოთხოვნაში ჩვენ ვეძებთ ყველაფერს, რაც ეხება წევრს, რომლის მომხმარებლის სახელი და პაროლი ემთხვევა მომხმარებლის მიერ მოწოდებული $username-ისა და $password-ის მნიშვნელობებს. შემდეგ სტრიქონზე გვაქვს if განაცხადი, რომელშიც ვამოწმებთ რამდენი შედეგი მივიღეთ - თუ შედეგი არ არის, ეს განყოფილება არ დამუშავდება. მაგრამ თუ არის შედეგი, ჩვენ ვიცით, რომ მომხმარებელი ნამდვილად არსებობს და ამიტომ ვაპირებთ მათ შესვლას.
შემდეგი ორი სტრიქონი არის მომხმარებლის ელ.ფოსტის მისამართის მისაღებად. ჩვენ უკვე გვაქვს ეს ინფორმაცია უკვე გაშვებული მოთხოვნიდან, ასე რომ ჩვენ შეგვიძლია ადვილად მივიღოთ ეს ინფორმაცია. პირველი, ვიღებთ მონაცემთა ბაზიდან ამოღებულ მონაცემთა მასივს. - ამ შემთხვევაში, ჩვენ ვიყენებთ PHP ფუნქციას mysql_fetch_array, მე მივანიშნე EmailAddress ველის მნიშვნელობა ცვლადზე, რომ მოგვიანებით გამოვიყენოთ.
ახლა ჩვენ დავაყენეთ სხდომა. ჩვენ ვინახავთ მომხმარებლის მომხმარებლის სახელს და ელფოსტის მისამართს სესიაზე, ასევე სპეციალურ მნიშვნელობასთან ერთად, რათა ვიცოდეთ, რომ ისინი შესული არიან ამ ფორმის გამოყენებით. ყოველივე ამის შემდეგ, ისინი გადამისამართდებიან წევრების ზონაში. META REFRESH კოდში.
მაშ, როგორ გამოიყურება ჩვენი პროექტი ამჟამად მომხმარებლისთვის?
დიდი! დროა გადავიდეთ ახლა, რათა დავრწმუნდეთ, რომ ადამიანებს შეუძლიათ რეალურად შევიდნენ თქვენს საიტზე.
დაე, ხალხს დარეგისტრირდეს
თქვენს საიტზე შესვლის ფორმის არსებობა კარგია, მაგრამ ახლა ჩვენ უნდა მივცეთ მომხმარებელს მისი გამოყენების საშუალება - ჩვენ უნდა შევქმნათ შესვლის ფორმა. შექმენით ფაილი სახელად register.php და ჩადეთ მასში შემდეგი კოდი.
უკაცრავად, ეს მომხმარებლის სახელი აღებულია. გთხოვთ, დაბრუნდეთ და სცადოთ ხელახლა.
"; ) else ( $registerquery = mysql_query ("INSERT INTO მომხმარებლებს (მომხმარებლის სახელი, პაროლი, ელფოსტის მისამართი) VALUES("".$username."", "".$password.", "".$email."") " ); if($registerquery) (echo"წარმატებები
"; ექო"თქვენი ანგარიში წარმატებით შეიქმნა. გთხოვთ დააწკაპუნეთ აქ შესასვლელად.
";) სხვა (ექო"შეცდომა
"; ექო"უკაცრავად, თქვენი რეგისტრაცია ვერ მოხერხდა. გთხოვთ, დაბრუნდეთ და სცადოთ ხელახლა.
";))) სხვა (?>რეგისტრაცია
გთხოვთ შეიყვანოთ თქვენი მონაცემები ქვემოთ რეგისტრაციისთვის.