1  <?php
2  function query_db($qstring) {
3     include('db_login.php');  // Doczenie danych uwierzytelniajcych.
4     require_once('DB.php');  // PEAR DB.
5     $connection = DB::connect("mysql://$db_username:$db_password@$db_host/
$db_database");
6
7     if (DB::isError($connection)){  // Sprawdzenie, czy poczenie zwrcio bdy.
8        die ("Nie mona nawiza poczenia z baz danych: <br />". DB::errorMessage
($connection));

9     }
10    if (get_magic_quotes_gpc()) {  // Zabezpieczenie przed atakiem typu SQL injection.
11       $qstring = stripslashes($qstring);
12    }
13    $qstring = mysql_real_escape_string($qstring);
14    $query = "SELECT tytul, stron, autor_id, autor FROM ksiazki NATURAL JOIN autorzy
15          WHERE ksiazki.tytul LIKE '%$qstring%'";  // Utworzenie zapytania.
16    $result = $connection->query($query);
17    if (DB::isError($result)){
18       die("Nie mona wykona zapytania do bazy danych:<br />".
19       $query." ".DB::errorMessage($result));
20    }
21    echo ('<table border="1">');
22    echo "<tr><th>Tytu</th><th>Autor</th><th>Stron</th></tr>";
23    while ($result_row = $result->fetchRow()) {
24       echo "<tr><td>";
25       echo $result_row[1] . '</td><td>';
26       echo $result_row[3] . '</td><td>';
27       echo $result_row[2] . '</td></tr>';
28    }
29     echo ("</table>");
30     $connection->disconnect();
31 }
32 ?>
33 <html>
34 <head>
35    <title>Tworzenie formularza</title>
36 </head>
37 <body>
38 <?php
39 $search = htmlentities($GET["search"]);
40 $self = htmlentities($SERVER['PHP_SELF']);
41 if ($search != NULL){
42    echo "Szukany cig tekstowy to: <strong>$search</strong>.";
43    query_db($search);
44 }
45 else {
46    echo ('
47    <form action="'.$self.'" method="get">
48       <label>Szukaj:
49          <input type="text" name="search"/>
50       </label>
51       <input type="submit" value="Znajd!" />
52    </form>
53     ');
54 }
55
56 ?>
57 </body>
58 </html>
