zoekfuntie maken
ik zou graag een zoekfunctie maken die uit de Db de gegevens haalt.
Ik heb alles afgezocht maar kan het nergens vinden.
Het gaat om een begin stukje op een eenvoudige manier zo dat ik het ga begrijpen.
Wie o wie wil me helpen.
snap van zoekfuncties maken niet erg veel .
Kan wel andere dingen maken met php.
SELECT veldnaam1, veldnaam2
FROM tabelnaam
WHERE veldnaam1 LIKE '%peetje%'
Die % is een wildcard en kan voor van alles staan. Hij staat erbij zodat je ook records vindt waarbij peetje een deel van het woord is.
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$zoekwoord="zoek";
$sql="SELECT kolom FROM tabel WHERE kolom='%".$zoekwoord."%'";
?>
$zoekwoord="zoek";
$sql="SELECT kolom FROM tabel WHERE kolom='%".$zoekwoord."%'";
?>
Of met fulltext gaan werken:
http://phphulp.nl/php/tutorials/3/34/
http://phphulp.nl/php/tutorials/3/56/
Gewijzigd op 01/01/1970 01:00:00 door Robert Deiman
ik wil uit verschilde tabels gegevens laten zoeken.
bovenste lijkt me een begin nu moet ik ook nog de gegevens laten zien op een aparte pagina.
vraag wel ff veel maar als ik het even doorheb heb je geen last mee van me hahahah.
In het action attribuut van je form tag zet je bijvoorbeeld zoekresultaten.php. Na verzenden van het formulier komt de user dan op die pagina terecht. Voer daar je query uit, controleer of hij gelukt is, en fetch de resultaten en klaar ben je.
Heb je al ervaring met het weergeven van gegevens uit MySQL?
Wel als ik dingen opvraag etc.
Maar hoe ik het moet laten weergeven op een ander pagina niet.
heb net het bovenste stukje script getest en hij haalt nu dus alles uit een tabel ik
had graag als ik het woord peetje in typ dat hij dan zoekt op peetje en niet alles.
voorbeeldje gemaakt. Bedoel je het zo? Geef ff een seintje, dan plak ik de code hierheen.
Ik heb even snel een als ik het beginsel maar heb dan ga ik het denk ik wel begrijpen.
dankje alvast.
zoeken.php
zoekresultaten.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Zoeken</title>
</head>
<body>
<h1>Typ een PHPhulp nickname in</h1>
<form method="post" action="zoekresultaten.php">
<p>
<label for="zoekwoord">zoek naar:</label>
<input id="zoekwoord" name="zoekwoord" type="text">
<input type="submit" value="zoeken!">
</p>
</form>
</body>
</html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Zoeken</title>
</head>
<body>
<h1>Typ een PHPhulp nickname in</h1>
<form method="post" action="zoekresultaten.php">
<p>
<label for="zoekwoord">zoek naar:</label>
<input id="zoekwoord" name="zoekwoord" type="text">
<input type="submit" value="zoeken!">
</p>
</form>
</body>
</html>
zoekresultaten.php
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
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
<?php
require 'db_config.php';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Zoekresultaten</title>
</head>
<body>
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$zoekwoord = trim ($_POST['zoekwoord']);
if (empty ($zoekwoord)) {
echo '<p>Geen zoekwoord ingevuld. Terug naar <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
else {
$sql = "
SELECT veldnaam
FROM tabelnaam
WHERE veldnaam LIKE '%" . $zoekwoord . "%'
";
if (!$res = mysql_query ($sql)) {
trigger_error (mysql_error ());
}
else {
echo '<h1>Gevonden resultaten: ' . mysql_num_rows ($res) . '</h1>';
while ($row = mysql_fetch_assoc ($res)) {
echo '<p>' . $row['nickname'] . '</p>';
}
echo '<hr><p>Terug naar <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
}
}
else {
echo '<p>Je moet eerst iets <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
?>
</body>
</html>
require 'db_config.php';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Zoekresultaten</title>
</head>
<body>
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$zoekwoord = trim ($_POST['zoekwoord']);
if (empty ($zoekwoord)) {
echo '<p>Geen zoekwoord ingevuld. Terug naar <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
else {
$sql = "
SELECT veldnaam
FROM tabelnaam
WHERE veldnaam LIKE '%" . $zoekwoord . "%'
";
if (!$res = mysql_query ($sql)) {
trigger_error (mysql_error ());
}
else {
echo '<h1>Gevonden resultaten: ' . mysql_num_rows ($res) . '</h1>';
while ($row = mysql_fetch_assoc ($res)) {
echo '<p>' . $row['nickname'] . '</p>';
}
echo '<hr><p>Terug naar <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
}
}
else {
echo '<p>Je moet eerst iets <a href="zoeken.php" title="zoeken">zoeken</a></p>';
}
?>
</body>
</html>
Gewijzigd op 01/01/1970 01:00:00 door Jan Koehoorn
is dat ook met echo of met print ?
oke was wel goed maar was vergeten bij echo te veranderen.
naam
plaats
Dankje vriendelijk.
Damn zeg.. je kan ook editten, 4 posts achter elkaar is wel heel erg veel.
nogeens
hoe kan ik op twee dingen zoeken.
nu heb ik dus zo dat ik op postcode kan zoeken doet het perfect.
maar wil ook dat ze op titel kunnen zoeken in het zelfde venster.
alles staat in de zelfde tabel krijg het niet voor elkaar.
heb het al met * geprobeert maar nope.
SELECT *
FROM naam
WHERE * LIKE '%" . $zoekwoord . "%'
where * lijkt me wel goed.
FROM naam
WHERE postcode LIKE '%" .$zoekwoord. "%'
OR titel LIKE '%" .$zoekwoord. "%'
ha dankje
echo 'Titel: ' . $row['titel'] . '</p>';
echo 'Postcode: ' . $row['postcode'] . '</p>';
echo 'Prijs: ' . $row['prijs'] . '</p>';
echo 'Prijs: ' . $row['advertentie_id'] . '</p>';
echo'<a href=\"../advertenties/advertentie.php?advertentie_id=$advertentie_id\">titel</a>";
Nu gaat het om de onderste $row['advertentie_id'] die moet achter $advertentie_id\ komen staan anders gaat de link niet naar de advertentie id toe.
Hoe krijg ik dit voorelkaar ?
Code (php)
1
2
3
2
3
<?php
echo '<a href="../advertenties/advertentie.php?advertentie_id=' . $row['advertentie_id'] . '">titel</a>';
?>
echo '<a href="../advertenties/advertentie.php?advertentie_id=' . $row['advertentie_id'] . '">titel</a>';
?>
Dankje ik had de twee puntjes . $row ] . weggelaten daarom kon ik het niet voorelkaar krijgen.