/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
search i MySQL tabel
Fra : Kim Schulz


Dato : 30-01-01 22:47

hejsa
Jeg skal lave en søgning i en tabel i en MySQL database hvor feltet der
skal søges i er i formatet text.
Hvordan gør jeg dette, når den helst skal kunne søge på flere ord, hvis
dette indtastes?


MVH
kim





--
Try not.
Do.
Or do not.
There is no try.

 
 
Povl H. Pedersen (30-01-2001)
Kommentar
Fra : Povl H. Pedersen


Dato : 30-01-01 22:54

On Tue, 30 Jan 2001 22:46:32 +0100,
Kim Schulz <kim@schulz.dk> wrote:
>hejsa
>Jeg skal lave en søgning i en tabel i en MySQL database hvor feltet der
>skal søges i er i formatet text.
>Hvordan gør jeg dette, når den helst skal kunne søge på flere ord, hvis
>dette indtastes?

Du kan jo lave noget som:

SELECT * FROM skodtabel WHERE x LIKE "%TEKST1%" AND x LIKE "%TEKST2"


Kim Schulz (30-01-2001)
Kommentar
Fra : Kim Schulz


Dato : 30-01-01 23:59

"Povl H. Pedersen" wrote:
>
> On Tue, 30 Jan 2001 22:46:32 +0100,
> Kim Schulz <kim@schulz.dk> wrote:
> >hejsa
> >Jeg skal lave en søgning i en tabel i en MySQL database hvor feltet der
> >skal søges i er i formatet text.
> >Hvordan gør jeg dette, når den helst skal kunne søge på flere ord, hvis
> >dette indtastes?
>
> Du kan jo lave noget som:
>
> SELECT * FROM skodtabel WHERE x LIKE "%TEKST1%" AND x LIKE "%TEKST2"

Hmm jeg har nu følgende...

$searchword= "%" . $searchword . "%";
$result = mysql_query( "SELECT tekst FROM tips WHERE tekst LIKE
'$searchword'");
while ($row=mysql_fetch_array($result)) {

print $row[tekst];
}

Følgende felter er der i tabellen tips:

ID = int(5)
tekst = text
topic = varchar(250)

jeg skal finde alle de tekst hvor $searchword er i.

Hvad er der galt dette virker nemlig ikke rigtigt.


MVH
kim

Martin Mouritzen (01-02-2001)
Kommentar
Fra : Martin Mouritzen


Dato : 01-02-01 19:16

After I finished the 3 Pan Galactic Gargle Blasters, Kim Schulz
<kim@schulz.dk> just offered me, he muttered some weird stuff, and I
had to correct this gibberish:

>Hmm jeg har nu følgende...

Hmm, prøv følgende

$searchwords = explode(" ",$searchword);
// hvor $searchword er feltet brugeren indtaster i.
$query = "SELECT tekst FROM tips WHERE";
$i = 0;
while($searchwords[$i]) {
   if ($i != 0) { $query .= " AND"; }
   $query .= " tekst LIKE '%".$searchwords[$i]."%'";
   $i++;
}
unset($i);
$result = mysql_query($query) or die("Fejl: ".mysql_error()." SQL:
".$query);
while (list($tekst) = mysql_fetch_array($result)) {
   print $tekst."<br>\n";
}
--
Martin Mouritzen. | http://www.trendy.dk
The truth is out there! Does anyone know the URL?

Kim Schulz (02-02-2001)
Kommentar
Fra : Kim Schulz


Dato : 02-02-01 00:59

Martin Mouritzen wrote:
>
> After I finished the 3 Pan Galactic Gargle Blasters, Kim Schulz
> <kim@schulz.dk> just offered me, he muttered some weird stuff, and I
> had to correct this gibberish:
>
> >Hmm jeg har nu følgende...
>
> Hmm, prøv følgende
>
> $searchwords = explode(" ",$searchword);
> // hvor $searchword er feltet brugeren indtaster i.
> $query = "SELECT tekst FROM tips WHERE";
> $i = 0;
> while($searchwords[$i]) {
> if ($i != 0) { $query .= " AND"; }
> $query .= " tekst LIKE '%".$searchwords[$i]."%'";
> $i++;
> }
> unset($i);
> $result = mysql_query($query) or die("Fejl: ".mysql_error()." SQL:
> ".$query);
> while (list($tekst) = mysql_fetch_array($result)) {
> print $tekst."<br>\n";
> }



Tak det var alle tider......Faktisk virkede det andet, jeg var bare en
klovn og havde skrevet den skulle connecte til den forkerte database.

Men tak


later.
Kim

--
The English have no respect for their language, and will not teach
their children to speak it.
      -- G. B. Shaw

Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408946
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste