database-zoeken
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?php
// Variabele voor de ingevoerde zoekterm:
$trefwoord = "";
// Variabele voor titel van de webpagina:
$paginatitel = "Zoeken";
// Variabele voor (fout)meldingen:
$melding = "<p>Typ een trefwoord in het invoervak en klik op de knop Zoeken.</p>";
// Ordernummer doorgeven als sessie-id (sid) in URL's:
if (isset($_GET['sid'])) {
$url1 = "?sid=" . $_GET['sid'];
$url2 = "&sid=" . $_GET['sid'];
} else {
$url1 = "";
$url2 = "";
}
if (isset($_GET['q'])) {
$trefwoord = $_GET['q']; // Trefwoord uit het vak 'q'
$trefwoord = strip_tags($trefwoord); // Tags en code verwijderen
$trefwoord = trim($trefwoord); // Witruimte verwijderen
// Zoeken alleen starten als er een trefwoord is ingevoerd:
if (strlen($trefwoord) > 1) {
// MySQL-selectiequery met reguliere expressies:
$sql = 'SELECT `ean`, `naam`, `omschrijving` ';
$sql .= 'FROM `producten` ';
$sql .= 'WHERE `naam` REGEXP "' . $trefwoord . '" ';
$sql .= 'OR `omschrijving` REGEXP "' . $trefwoord . '" ';
$sql .= 'OR `details` REGEXP "' . $trefwoord . '" ';
$sql .= 'ORDER BY `prijs` DESC ';
// Databaseverbinding openen en query uitvoeren:
define("MYSQL_SERVER", "localhost");
define("MYSQL_GEBRUIKERSNAAM", "root");
define("MYSQL_WACHTWOORD", "");
$verbinding = mysql_connect(MYSQL_SERVER, MYSQL_GEBRUIKERSNAAM, MYSQL_WACHTWOORD) or die(mysql_error());
mysql_select_db("test") or die(mysql_error());
$resultaat = mysql_query($sql) or die(mysql_error());
// Is er een record gevonden?
if (mysql_num_rows($resultaat) < 1) {
mysql_free_result($resultaat); // Resultaatset vrijgeven
mysql_close($verbinding); // Databaseverbinding sluiten
$melding = "<p>Er zijn geen resultaten gevonden voor " . $trefwoord . ".</p>";
} else {
$paginatitel = "Zoekresultaten voor " . $trefwoord;
$melding = "<p>Er zijn ";
$melding .= mysql_num_rows($resultaat);
$melding .= " resultaten gevonden voor " . $trefwoord . ":</p>\n";
// Begin van een genummerde opsomming:
$melding .= "<ol>";
// De gevonden producten toevoegen aan de melding:
while ($rij = mysql_fetch_assoc($resultaat)) {
$melding .= '<li><strong><a href="product.php?ean=';
// Primaire sleutel van het product:
$melding .= $rij["ean"];
$melding .= $url2;
$melding .= '">';
// Naam van het product:
$melding .= $rij["naam"];
$melding .= '</a></strong><br>';
// Omschrijving van het product:
$melding .= $rij["omschrijving"];
$melding .= "</li>\n";
}
// Resultaatset vrijgeven en databaseverbinding sluiten:
mysql_free_result($resultaat);
mysql_close($verbinding);
// Einde van de genummerde opsomming:
$melding .= "</ol>\n";
// Trefwoord opvallend markeren in de resultaten:
$melding = eregi_replace($trefwoord, '<strong class="iv">' . $trefwoord . '</strong>', $melding);
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="nl">
<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?php echo $paginatitel; ?></title>
<link href="p.css" media="print" rel="stylesheet" type="text/css">
<link href="xp.css" media="screen" rel="stylesheet" type="text/css">
</head>
<body lang="nl">
<h1>Zoeken in de catalogus</h1>
<form action="zoeken.php<?php echo $url1; ?>" method="get">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="right"><input name="q" size="55" value="<?php echo $trefwoord; ?>"></td>
<td align="left">
<?php
// Eventueel ordernummer doorgeven als verborgen formulierveld:
if (isset($_GET['sid'])) {
echo '<input name="sid" type="hidden" value="' . $_GET['sid'] . '">';
}
?>
<input style="width: 75px; height: 23px;" type="submit" value="Zoeken">
</td>
</tr>
</table>
</form>
<?php
echo $melding;
?>
// Variabele voor de ingevoerde zoekterm:
$trefwoord = "";
// Variabele voor titel van de webpagina:
$paginatitel = "Zoeken";
// Variabele voor (fout)meldingen:
$melding = "<p>Typ een trefwoord in het invoervak en klik op de knop Zoeken.</p>";
// Ordernummer doorgeven als sessie-id (sid) in URL's:
if (isset($_GET['sid'])) {
$url1 = "?sid=" . $_GET['sid'];
$url2 = "&sid=" . $_GET['sid'];
} else {
$url1 = "";
$url2 = "";
}
if (isset($_GET['q'])) {
$trefwoord = $_GET['q']; // Trefwoord uit het vak 'q'
$trefwoord = strip_tags($trefwoord); // Tags en code verwijderen
$trefwoord = trim($trefwoord); // Witruimte verwijderen
// Zoeken alleen starten als er een trefwoord is ingevoerd:
if (strlen($trefwoord) > 1) {
// MySQL-selectiequery met reguliere expressies:
$sql = 'SELECT `ean`, `naam`, `omschrijving` ';
$sql .= 'FROM `producten` ';
$sql .= 'WHERE `naam` REGEXP "' . $trefwoord . '" ';
$sql .= 'OR `omschrijving` REGEXP "' . $trefwoord . '" ';
$sql .= 'OR `details` REGEXP "' . $trefwoord . '" ';
$sql .= 'ORDER BY `prijs` DESC ';
// Databaseverbinding openen en query uitvoeren:
define("MYSQL_SERVER", "localhost");
define("MYSQL_GEBRUIKERSNAAM", "root");
define("MYSQL_WACHTWOORD", "");
$verbinding = mysql_connect(MYSQL_SERVER, MYSQL_GEBRUIKERSNAAM, MYSQL_WACHTWOORD) or die(mysql_error());
mysql_select_db("test") or die(mysql_error());
$resultaat = mysql_query($sql) or die(mysql_error());
// Is er een record gevonden?
if (mysql_num_rows($resultaat) < 1) {
mysql_free_result($resultaat); // Resultaatset vrijgeven
mysql_close($verbinding); // Databaseverbinding sluiten
$melding = "<p>Er zijn geen resultaten gevonden voor " . $trefwoord . ".</p>";
} else {
$paginatitel = "Zoekresultaten voor " . $trefwoord;
$melding = "<p>Er zijn ";
$melding .= mysql_num_rows($resultaat);
$melding .= " resultaten gevonden voor " . $trefwoord . ":</p>\n";
// Begin van een genummerde opsomming:
$melding .= "<ol>";
// De gevonden producten toevoegen aan de melding:
while ($rij = mysql_fetch_assoc($resultaat)) {
$melding .= '<li><strong><a href="product.php?ean=';
// Primaire sleutel van het product:
$melding .= $rij["ean"];
$melding .= $url2;
$melding .= '">';
// Naam van het product:
$melding .= $rij["naam"];
$melding .= '</a></strong><br>';
// Omschrijving van het product:
$melding .= $rij["omschrijving"];
$melding .= "</li>\n";
}
// Resultaatset vrijgeven en databaseverbinding sluiten:
mysql_free_result($resultaat);
mysql_close($verbinding);
// Einde van de genummerde opsomming:
$melding .= "</ol>\n";
// Trefwoord opvallend markeren in de resultaten:
$melding = eregi_replace($trefwoord, '<strong class="iv">' . $trefwoord . '</strong>', $melding);
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="nl">
<head>
<meta http-equiv="Content-Language" content="nl">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title><?php echo $paginatitel; ?></title>
<link href="p.css" media="print" rel="stylesheet" type="text/css">
<link href="xp.css" media="screen" rel="stylesheet" type="text/css">
</head>
<body lang="nl">
<h1>Zoeken in de catalogus</h1>
<form action="zoeken.php<?php echo $url1; ?>" method="get">
<table border="0" cellpadding="2" cellspacing="2">
<tr>
<td align="right"><input name="q" size="55" value="<?php echo $trefwoord; ?>"></td>
<td align="left">
<?php
// Eventueel ordernummer doorgeven als verborgen formulierveld:
if (isset($_GET['sid'])) {
echo '<input name="sid" type="hidden" value="' . $_GET['sid'] . '">';
}
?>
<input style="width: 75px; height: 23px;" type="submit" value="Zoeken">
</td>
</tr>
</table>
</form>
<?php
echo $melding;
?>