Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class User{
- public $userId = "";
- public $name = "";
- public $surname = "";
- public function GetInichaly(){
- return substr($this->name, 0,1).substr($this->surname, 0,1);
- }
- }
- $host = '127.0.0.1';
- $db = 'pdo';
- $user = 'root';
- $pass = '';
- $charset = 'utf8mb4';
- $dsn = "mysql:host=$host;dbname=$db;charset=$charset";
- try {
- $pdo = new PDO($dsn, $user, $pass); //tworzenie obiektu
- $stmt = $pdo->prepare('SELECT * FROM User WHERE name LIKE :part'); //bindowanie, parametr part zastapiony na %a%
- $stmt->bindValue(':part', '%a%', PDO::PARAM_STR); //parametr typu string
- $stmt->execute();
- echo $stmt->rowCount(); //licznik wierszy, ile ludzi udalo sie pozyskac
- if($stmt->rowCount() >0){
- echo '<table border="1" width="100%">'; //budowanie tablicy htmlowej wyswietlajacej dane
- while($row = $stmt->fetchObject ("User" )){ // przechwytuje obiekt, ma postac obiekt klasy user
- echo '<tr>
- <td>',$row->userId,'</td>
- <td>',$row->name,'</td>
- <td>',$row->surname,'</td>
- <td>',$row->GetInichaly(),'</td>
- </tr>'; //metoda pobierajaca inicjaly wyzej
- }
- echo '</table>';
- }
- $stmt = $pdo->prepare('SELECT
- *
- FROM
- Address
- INNER JOIN
- User
- ON Address.userId = User.userId
- WHERE
- User.name LIKE :part'); //dane z adresu polaczone z uzytkownikiem ktorego imie zawiera litere A
- $stmt->bindValue(':part', '%a%', PDO::PARAM_STR);
- $stmt->execute();
- echo $stmt->rowCount();
- if($stmt->rowCount() >0){
- echo '<table border="1" width="100%">';
- while($row = $stmt->fetchObject ()){ // przechwyci do klasy std, jesli nic nie wpiszemy
- echo '<tr>
- <td>',$row->addressId,'</td>
- <td>',$row->street,'</td>
- <td>',$row->houseNumber,'</td>
- </tr>';
- }
- echo '</table>';
- //Liczba użytkowników dla poszczególnych książek:
- $stmt = $pdo->prepare('SELECT
- book.title,
- wypozyczenia.liczbawypozyczen
- FROM
- Book
- INNER JOIN
- (
- select
- userHasBook.bookId,
- count(UserHasBook.userHasBookId) as liczbaWypozyczen
- from
- UserHasBook
- Group by UserHasbookId
- ) as wypozyczenia
- ON Book.BookId = wypozyczenia.bookId);
- $stmt->execute();
- echo $stmt->rowCount();
- if($stmt->rowCount() >0){
- echo '<table border="1" width="100%">';
- while($row = $stmt->fetchObject ()){
- echo '<tr>
- <td>',$row->title,'</td>
- <td>',$row->liczbawypozyczen,'</td>
- </tr>'; /
- }
- echo '</table>';
- }
- }
- } catch (\PDOException $e) {
- throw new \PDOException($e->getMessage(), (int)$e->getCode());
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement