Ik ben nu al een tijdje bezig met een zoemachine te maken voor mijn website, maar ik was er even mee gestopt, omdat ik niet wist hoe ik verder moest.
Ik heb nu al een gedeelte van de zoekmachine af, alleen nu zit ik met een probleem, bij het gene wat in de database komt daar zijn de tags(zoekwoorden dus) gescheiden door komma's, hoe kan ik ervoor zorgen dat als ik bijvoorbeeld dit in de database heb staan:
'makkelijk, script'
Dat als ik makkelijk intik dat er dan alle zoekresultaten bij komen te staan die bij het woord makkelijk horen?
mvg,
Tom Heek
- Zoekmachine maken
-
14-02-2010, 15:15 #1
- Berichten
- 991
- Lid sinds
- 16 Jaar
Zoekmachine maken
-
In de schijnwerper
-
14-02-2010, 15:33 #2
- Berichten
- 221
- Lid sinds
- 16 Jaar
Bedoel je dat als je 'Makkelijk' intikt dat hij ook resultaten geeft van bijvoorbeeld 'Simpel'?
-
14-02-2010, 15:45 #3
- Berichten
- 991
- Lid sinds
- 16 Jaar
Nee, ik heb dit script gemaakt:
www.nolifegamer.nl/uwscript, met het script van dat je ook je eigen code kan verzenden kan je ook tags invoeren, ik heb alleen geen idee hoe ik dit juist uit de db kan halen.
Als de tags dit zijn:
'makkelijk, script'
Dat als de gebruiker 'makkelijk' intypt dat er alle scripts komen te staan die als tag het woord makkelijk in zich hadden.
-
14-02-2010, 15:53 #4
- Berichten
- 548
- Lid sinds
- 16 Jaar
een SQl query? SELECT `kolom1`,`kolom2` FROM `tabel1` WHERE tag LIKE '%" . $tag . "%'
-
14-02-2010, 15:57 #5
- Berichten
- 991
- Lid sinds
- 16 Jaar
Dat gaat dus niet werken, in de db staat ook alles met komma's gescheiden.
-
14-02-2010, 15:57 #6
- Berichten
- 980
- Lid sinds
- 17 Jaar
Nadeel van Milan's voorbeeld is dat je dan bij het zoeken naar het woord "makkelijk" alle resultaten krijgt met het woord makkelijk erin: dus ook makkelijkerderderder en makkelijken etc..
Alternatief kan zijn
WHERE `tag` LIKE '".$tag."' OR `tag` LIKE '%,".$tag."' OR `tag` LIKE '%,".$tag.",%' OR `tag` LIKE '".$tag.",%'
-
14-02-2010, 17:07 #7
- Berichten
- 991
- Lid sinds
- 16 Jaar
Ik ga binnenkort even kijken of het werkt.
Aanvullend bericht:
Ik bedoel trouwens, dat de resultaten in de database ook al zijn opgeslagen met een komma er tussen.Laatst aangepast door Tom Heek : 14-02-2010 om 17:08 Reden: Automatisch samengevoegd.
-
14-02-2010, 17:36 #8
- Berichten
- 548
- Lid sinds
- 16 Jaar
@Tom, die % staat voor zegmaar tekst, dus als je LIKE '%appel' doet vind hij wel sinasappel, maar niet appelsap
-
14-02-2010, 17:39 #9
- Berichten
- 991
- Lid sinds
- 16 Jaar
Ik ga het even testen, iedereen bedankt in ieder geval.
Aanvullend bericht:
Het werkt niet, dit is het stukje code waarover het gaat:
PHP Code:if($zoeken == $zoeken AND $wat == 'naam'){
echo'Je hebt gezocht op het woord: ' . $zoeken . '.<br /><br />';
if($aantal_codes == '0'){
echo'Wij hebben nog geen codes in de database.<br />';
}
$sql = mysql_query("SELECT * FROM scripts WHERE naam LIKE '" . $zoeken ."'");
while($fetch = mysql_fetch_assoc($sql)){
echo'<table><tr><td>';
echo'Naam:';
echo'</td><td>';
echo $fetch['naam'];
echo'</td></tr><tr><td>';
echo'Url:';
echo'</td><td>';
echo'<a href="' . $url . $fetch['id'] . '">' . $url . $fetch['id'] . '</a>';
echo'</td></tr></table>';
}
}
Laatst aangepast door Tom Heek : 14-02-2010 om 17:47 Reden: Automatisch samengevoegd.
-
14-02-2010, 17:52 #10
- Berichten
- 415
- Lid sinds
- 17 Jaar
Je hebt hier de % niet in je query staan.
-
14-02-2010, 17:54 #11
- Berichten
- 991
- Lid sinds
- 16 Jaar
Nee, dan krijg een ik een error.
Iets met mysql_fetch_assocLaatst aangepast door Tom Heek : 15-02-2010 om 15:33
-
15-02-2010, 21:11 #12
- Berichten
- 1.344
- Lid sinds
- 18 Jaar
PHP Code:if($zoeken == $zoeken AND $wat == 'naam')
{
if($aantal_codes == '0')
{
echo'Wij hebben nog geen codes in de database.<br />';
}
else
{
echo'Je hebt gezocht op het woord: ' . $zoeken . '.<br /><br />';
$zoeken = mysql_real_escape_string($zoeken);
$sql = mysql_query("SELECT * FROM scripts WHERE naam LIKE '" . $zoeken ."'");
while($fetch = mysql_fetch_assoc($sql))
{
echo'<table><tr><td>';
echo'Naam:';
echo'</td><td>';
echo $fetch['naam'];
echo'</td></tr><tr><td>';
echo'Url:';
echo'</td><td>';
echo'<a href="' . $url . $fetch['id'] . '">' . $url . $fetch['id'] . '</a>';
echo'</td></tr></table>';
}
}
}
-
16-02-2010, 10:48 #13
- Berichten
- 75
- Lid sinds
- 16 Jaar
@ferdi,
inderdaad dat is de goede nu alleen nog met de % ertussen :)
PHP Code:if($zoeken == $zoeken AND $wat == 'naam')
{
if($aantal_codes == '0')
{
echo'Wij hebben nog geen codes in de database.<br />';
}
else
{
echo'Je hebt gezocht op het woord: ' . $zoeken . '.<br /><br />';
$zoeken = mysql_real_escape_string($zoeken);
$sql = mysql_query("SELECT * FROM scripts WHERE naam LIKE '%" . $zoeken ."%'") or die(mysql_error());
// Ik weet de mysql_error() is niet geliefd, maar om fouten op te sporen, is hij wel handig..
while($fetch = mysql_fetch_object($sql)) // mysql_fetch_object is gewoon een voorkeur van mij
{
echo'<table><tr><td>';
echo'Naam:';
echo'</td><td>';
echo $fetch->naam;
echo'</td></tr><tr><td>';
echo'Url:';
echo'</td><td>';
echo'<a href="' . $url . $fetch->id . '">' . $url . $fetch->id . '</a>';
echo'</td></tr></table>';
}
}
}
Laatst aangepast door Bram Hammer : 16-02-2010 om 11:14
-
16-02-2010, 10:51 #14Ruud S. Guest
Ik heb een zoekmachine script (web images en boeken) te koop, ik ben er nog mee bezig maar u kan 'm vanavond of morgen van me kopen voor 3 euro!! Hij maakt gebruik (net als Ilse.nl en Startpagina.nl) van de Google API dus u hoeft niks te doen aan het indexeren. Het is een goede manier van adverteren naast de resultaten. Stuurt u mij a.u.b een PM
Ruud S.
-
16-02-2010, 10:55 #15
- Berichten
- 72
- Lid sinds
- 16 Jaar
Dit is vrij overbodig en heeft geen nut.
if($zoeken == $zoeken)
Je vraagt of 'zoekwoord' hetzelfde is als 'zoekwoord', dit is altijd ja.
Overigens is LIKE met % voor en % na een vrij vage zoekoptie, hiermee vindt je ook heel veel dingen die je niet zoekt.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic