[PHP/SQL] zoekfunctie maken

Pagina: 1
Acties:
  • 338 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Martijn
  • Registratie: Juli 1999
  • Laatst online: 11-09 13:35
Ìk wil voor m'n site een zoekfunctie maken, maar ik heb geen flauw idee hoe ik het aan moet pakken. Het is een zoekfunctie voor een concertagenda ( http://www.rubensquartet.com/nl/php/concertagenda-nl.php )... Er zijn 3 option veldjes, waar elke keer alle waardes opgehaald worden uit een database (plaats, zaal, maand). De bedoeling is dat je bv. een plaats selecteerd en dat ie dan alles uit de DB van die maand retourneert en dat dan in een popup veldje laat zien... En zo ook met de andere velden... ZOu iemand me kunnen helpen / in een richting kunnen sturen? Ik heb vanalles gezocht op internet maar kon geen tutorial ofzo vinden... BEDANKT ! :)

Acties:
  • 0 Henk 'm!

  • justmental
  • Registratie: April 2000
  • Niet online

justmental

my heart, the beat

Wat voor een database gebruik je?

Who is John Galt?


Acties:
  • 0 Henk 'm!

  • Martijn
  • Registratie: Juli 1999
  • Laatst online: 11-09 13:35
MySQL

Acties:
  • 0 Henk 'm!

Verwijderd

* stuurt een richting in *
code:
1
$result = mysql_query("SELECT * FROM database WHERE $maand LIKE '%$search%'") or die(mysql_error());

Acties:
  • 0 Henk 'm!

Verwijderd

Zoals ScorpionY al zei,
ga met MySQL stoeien (veel info lezen etc.) en ga zoeken op "LIKE" ik denk dat je dan al een heel eind in de goede richting zit

Acties:
  • 0 Henk 'm!

  • Martijn
  • Registratie: Juli 1999
  • Laatst online: 11-09 13:35
Is over dit soort dingen nergens een tutorial te vinden? Ik heb namelijk vrij weinig tijd om heeeeeel erg veel tekst door te gaan nemen :P... Ik wil er natuurlijk wel tijd in steken, maar ik zoek de snelste manier... :)

Acties:
  • 0 Henk 'm!

Verwijderd

Op woensdag 10 april 2002 22:36 schreef Martijn het volgende:
Is over dit soort dingen nergens een tutorial te vinden? Ik heb namelijk vrij weinig tijd om heeeeeel erg veel tekst door te gaan nemen :P... Ik wil er natuurlijk wel tijd in steken, maar ik zoek de snelste manier... :)
Voor een simpele zoek-functie heb je niet meer nodig als "$result = mysql_query("SELECT * FROM database WHERE $maand LIKE '%$search%'") or die(mysql_error());" hoor + wat array functies, zoals implode/explode.

Voor de rest komt er om te beginnen niets nieuws bij te kijken!

Acties:
  • 0 Henk 'm!

  • Martijn
  • Registratie: Juli 1999
  • Laatst online: 11-09 13:35
Op woensdag 10 april 2002 22:38 schreef DiEana het volgende:

[..]

Voor een simpele zoek-functie heb je niet meer nodig als "$result = mysql_query("SELECT * FROM database WHERE $maand LIKE '%$search%'") or die(mysql_error());" hoor + wat array functies, zoals implode/explode.

Voor de rest komt er om te beginnen niets nieuws bij te kijken!
Leuk en aardig, maar implode/explode enzo, das allemaal abracadabra voor mij :P , ik ga maar eens wat nalezen :)... Iemand nog wat aan te voegen?

Acties:
  • 0 Henk 'm!

Verwijderd

Op woensdag 10 april 2002 22:40 schreef Martijn het volgende:

[..]

Leuk en aardig, maar implode/explode enzo, das allemaal abracadabra voor mij :P , ik ga maar eens wat nalezen :)... Iemand nog wat aan te voegen?
www.php.net/functie-naam

Acties:
  • 0 Henk 'm!

Verwijderd

Hoe sla je alles op in je DB !?
Heb je gewoon een Tabel;
Plaats - Datum - Zaal - Tijd ?!

Dan kun je idd gewoon kijken welke option er wordt gebruikt, en je SQL Query daar op aanpassen zoals eerder gezegd.

bv als er bij de option Almelo is aangevinkt;

SELECT * FROM TABEL WHERE Plaats = 'Almelo';
of eventueel

$option = 'Almelo';
SELECT * FROM TABEL WHERE Plaats = $option;

Zoek anders eens op de welbekende PHP tut. sites naar searchscripts, zijn der vast plenty :)

Acties:
  • 0 Henk 'm!

  • Martijn
  • Registratie: Juli 1999
  • Laatst online: 11-09 13:35
Op woensdag 10 april 2002 23:10 schreef Tizzwat het volgende:
Hoe sla je alles op in je DB !?
Heb je gewoon een Tabel;
Plaats - Datum - Zaal - Tijd ?!

Dan kun je idd gewoon kijken welke option er wordt gebruikt, en je SQL Query daar op aanpassen zoals eerder gezegd.

bv als er bij de option Almelo is aangevinkt;

SELECT * FROM TABEL WHERE Plaats = 'Almelo';
of eventueel

$option = 'Almelo';
SELECT * FROM TABEL WHERE Plaats = $option;

Zoek anders eens op de welbekende PHP tut. sites naar searchscripts, zijn der vast plenty :)
Alles wordt opgeslapgen in een tabel 'agenda', met daarin velden (plaats, zaal, datum, tijd, enz...)

Acties:
  • 0 Henk 'm!

Verwijderd

Op woensdag 10 april 2002 23:25 schreef Martijn het volgende:

Alles wordt opgeslapgen in een tabel 'agenda', met daarin velden (plaats, zaal, datum, tijd, enz...)
Dan wordt de query dus;

SELECT * FROM agenda WHERE Plaats = 'Almelo';

Acties:
  • 0 Henk 'm!

Verwijderd

[off topic]
Ik dacht trouwens dat SELECT * ranzig was... ;) Maar goed, genoeg miereneukerrij.
[/off topic]

Heb je de mysql documentatie (http://www.mysql.com) al eens bekeken? Zo te lezen niet. Lijkt me wel handig.

Acties:
  • 0 Henk 'm!

Verwijderd

Is deze mysql query (met like) langzaam of is ie redelijk snel? ik heb ook super simpele search met deze query maar ik wil natuurlijk niet dat ie mijn server te veel belast.

Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

als je minder dan ~1000 records moet doorzoeken is een like prima te doen hoor en als het niet hele grote lappen tekst zijn is ook 10000 nog wel te doen.

[ Voor 33% gewijzigd door ACM op 25-06-2003 19:59 ]


Acties:
  • 0 Henk 'm!

  • Alex
  • Registratie: Juli 2001
  • Laatst online: 20-08 21:38
Is FULLTEXT in zo'n geval niet veel sneller?

Deze post is bestemd voor hen die een tegenwoordige tijd kunnen onderscheiden van een toekomstige halfvoorwaardelijke bepaalde subinverte plagiale aanvoegend intentioneel verleden tijd.
- Giphart

Pagina: 1