W poprzedniej części tej serii MySQL przedstawiłem przegląd manipulacji tabelami w MySQL. W tej części serii samouczków nauczę Cię, jak tworzyć CRUD w PHP i MySQL, wykonując insert , aktualizacja i usuń zapytania. Zapytania te można wykonać w następujący sposób.
Wykonywanie pojedynczego zapytania
Wykonuje jedno zapytanie na raz. Zacznijmy od wprowadzenia danych do naszej bazy danych, którą stworzyliśmy wcześniej na naszym hostingu dla PHP MySQL. Utwórz nowy plik php w folderze „praktyka ”, który wcześniej stworzyliśmy i nazwaliśmy go crud.php. CRUD to skrót od zapytań Utwórz, Odczytaj, Zaktualizuj i Usuń. Teraz w nowym pliku dodaj tę linię na górze require_once „db_connection.php” i utwórz tę nową funkcję:
require_once 'db_connection.php'; function SingleQuery($queri) { $conn = OpenCon(); if($conn->query($queri) === TRUE) { CloseCon($conn); return true; } else { return $conn->error; } }
Funkcja przyjmuje jeden parametr jako wymagane zapytanie i wykonuje je. Teraz utwórz nowy plik index2.php w tym samym folderze i na górze dodaj ten wiersz require_once „crud.php”. Teraz dodaj te linie w swoim index2.php:
include 'crud.php'; $sql = "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('w','w','[email protected]','First Insert Using Single Query')"; $result = SingleQuery($sql); if($result === true) { echo 'success'; } else { echo $result; }
Następnie otwórz przeglądarkę i przejdź do localhost/practice/index2.php, a odniesiesz sukces, jeśli wpiszesz prawidłowe zapytanie.
Wykonywanie wielu zapytań
Używając tej metody, możesz wykonać więcej niż jedną wstawkę , wybierz lub aktualizacja zapytanie. Zacznijmy od napisania funkcji dla Multi Insert lub Aktualizuj zapytania. Zapisz tę nową funkcję w swoim pliku crud.php
function MultiQuery($quries) { $conn = OpenCon(); if($conn->multi_query($quries) === true) { CloseCon($conn); return true; } else { return $conn->error; } }
Funkcja przyjmuje jeden parametr jako wymagane zapytanie i wykonuje je. Teraz wywołaj tę funkcję w swoim index2.php:
include 'crud.php'; $sql = "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('a','a','[email protected]','First Insert Using Multiple Queries');"; $sql .= "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('b','b','[email protected]','First Insert Using Multiple Queries');"; $sql .= "INSERT INTO myguests(firstname,lastname,email,subject) VALUES ('c','c','[email protected]','First Insert Using Multiple Queries');"; $result = MultiQuery($sql); if($result === true) { echo 'success'; } else { echo $result; }
Teraz otwórz przeglądarkę i znajdź adres localhost/practice/index2.php, a odniesiesz sukces, jeśli wpiszesz prawidłowe zapytanie.
Nie ma nic tak prostego jak wdrażanie aplikacji PHP w chmurze
Dzięki Cloudways możesz uruchomić swoje aplikacje PHP na zarządzanych serwerach w chmurze w ciągu zaledwie kilku minut.
Zacznij bezpłatnieCRUD w PHP i MySQL z przygotowanymi oświadczeniami
Przygotowane instrukcje służą do wielokrotnego wykonywania tego samego zapytania z wysoką wydajnością. Teraz zapisz tę nową funkcję w swoim pliku crud.php:
function PreQuery($fname,$lname,$email,$subj) { $conn = OpenCon(); $query = $conn->prepare("INSERT INTO myguests(firstname, lastname, email, subject) VALUES (?,?,?,?)"); $query->bind_param("ssss", $fname,$lname,$email,$subj); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
Będziemy selekcjonować dane na podstawie przygotowanych zestawień. Zobaczmy, jak działa przygotowane zestawienie:
- Najpierw przygotowujesz oświadczenie, takie jak WSTAWIĆ moigoście (imię, nazwisko, adres e-mail, temat) WARTOŚCI (?,?,?,?). Wyjechaliśmy ? gdzie chcemy wstawić wartości.
- Po drugie, połączymy te wartości.Pierwszy parametr przyjmuje typy danych wartości, a po nim wartości. Argument typu danych może mieć cztery typy.
- i – liczba całkowita
- s – ciąg
- d – podwójny
- b – kropelka
- Wykonamy to.
Funkcja przyjmuje cztery parametry jako żądaną wartość i wykonuje ją. Teraz wywołaj tę funkcję w swoim index2.php:
include 'crud.php'; $firstn = "Ahmed"; $lastn = "Khan"; $email = "[email protected]"; $subject = "Inserting Data using prepared Query"; $result = PreQuery($firstn,$lastn,$email,$subject); if($result === true) { echo 'success'; } else { echo $result; }
Teraz otwórz przeglądarkę i znajdź localhost/practice/index2.php, a odniesiesz sukces, jeśli wpiszesz prawidłowe zapytanie.
Wybierz wykonanie zapytania
Teraz wybierzmy dane z naszej bazy danych MySQL za pomocą wykonania pojedynczego zapytania. Napisz nową funkcję w swoim crud.php napisaną poniżej:
function selectdata($sql) { $conn = OpenCon(); $result = $conn->query($sql); if($result) { if($result->num_rows > 0) { return $result; } else { return "zero"; } } else { return $result->error; } }
Funkcja najpierw sprawdza, czy zapytanie zostało wykonane pomyślnie. Jeśli nie, wysyła błąd. Po drugie, sprawdza, czy liczba wierszy jest większa niż 0, czy nie. Jeśli tak, wysyła „Znaleziono zero wyników”. Teraz wywołaj tę funkcję w index2.php i napisz następujący kod:
<table> <tr> <td> Name</td> <td> Email</td> <td> Message</td> </tr> <?php include 'crud.php'; $sql = "SELECT * FROM `myguests`"; $result = selectdata($sql); if($result != "zero") { while($row = $result->fetch_assoc()) { echo "<tr>"; echo "<td>" . $row['firstname'].' '.$row['lastname'] . "</td>"; echo "<td>" . $row['email']. "</td>"; echo "<td>" . $row['subject']. "</td>"; echo "</tr>"; } } else { echo $result; } ?> </table>
Następnie otwórz przeglądarkę i przejdź do localhost/practice/index2.php, a wszystkie dane w bazie danych znajdziesz na stronie index2.php.
Aktualizuj zapytanie za pomocą przygotowanej instrukcji
Napiszmy nową funkcję w pliku crud.php do wykonania instrukcji aktualizacji:
function UpdateQuery($column,$value,$id) { $conn = OpenCon(); $query = $conn->prepare("UPDATE myguests SET $column = ? WHERE id = ?"); $query->bind_param("si",$value,$id); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
Parametr aktualizacji przyjmuje trzy parametry. Jedna to nazwa kolumny, którą należy zaktualizować, druga to wartość, która zostanie zastąpiona poprzednią wartością, a trzecia to identyfikator wiersza, w którym zostanie zmieniona. Teraz wykonaj tę funkcję w index2.php :
include 'crud.php'; $result = UpdateQuery("firstname","David",1); if($result === true) { echo 'success'; } else { echo $result; }
Kiedy to zrobisz, otwórz przeglądarkę i znajdź localhost/practice/index2.php, a odniesiesz sukces, jeśli nie wystąpi żaden błąd.
Usuń zapytanie za pomocą przygotowanej instrukcji
Napiszmy nową funkcję w twoim pliku crud.php, aby wykonać instrukcję delete:
function DeleteQuery($id) { $conn = OpenCon(); $query = $conn->prepare("DELETE FROM myguests WHERE id = ?"); $query->bind_param("i",$id); //var_dump($query); if($query->execute()) { CloseCon($conn); return true; } else { return $conn->error; } }
Parametr usuwania przyjmuje jeden parametr, który będzie identyfikatorem wiersza, który należy usunąć z tabeli. Teraz wykonaj tę funkcję w index2.php:
include 'crud.php'; $result = DeleteQuery(1); if($result === true) { echo 'success'; } else { echo $result; }
Następnie otwórz przeglądarkę i znajdź localhost/practice/index2.php, a odniesiesz sukces, jeśli nie ma błędu.
Wniosek
W tym samouczku dowiedzieliśmy się, jak wykonać CRUD w PHP i MySQL na trzy różne sposoby. W następnej części tej serii MySQL omówię klauzule pobierania danych MySQL. Oto krótkie wprowadzenie i lista głównych tematów w tej serii MySQL.
Jeśli masz jakieś pytania dotyczące tego, czego nauczyliśmy się w tym samouczku, możesz skomentować poniżej! Powodzenia!