Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
[MySQL 3.23.X] Datenbankabfrage [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
[MySQL 3.23.X] Datenbankabfrage


 
Hoppala
24-05-2003, 18:12 
 
Hi !

Ein Kumpel ist so nett und schreibt mir unter PHP/MYSQL eine Musikdaten Datenbank :D, jetzt kommt er aber mit der Suchabfrage nicht weiter, weiss vielleicht jemand , wie man eine gute Suchfunktion in PHP schreiben kann ,
um MySQL Tabellen nach mehreren Begriffe zu durchsuchen
wobei das Ergebnis nach der Häufigkeit der gefundenen
Begriffe sortiert werden sollte. ?

Er benötigt unter anderen den regulären Ausdruck um aus diesem String

<b>LP</b> (<i>Best-Nr: 34</i>)<br>

Das LP und 34 rauszufiltern.

Und mit welcher PHP Funktion benutzt er am besten diesen Ausdruck, um das später in einem Feld stehen zu haben?

Vielen Dank im voraus :)
Hop

 
wahsaga
24-05-2003, 18:48 
 
Original geschrieben von Hoppala
Er benötigt unter anderen den regulären Ausdruck um aus diesem String

<b>LP</b> (<i>Best-Nr: 34</i>)<br>

Das LP und 34 rauszufiltern.
den ansatz halte ich schon für falsch.

<b>LP</b> (<i>Best-Nr: 34</i>)<br>
ist lediglich eine formatierung zur anzeige von daten, die daten selber solltest du aber so wie sie sind übergeben, also z.b. ?lp=labersuelz&bestnr=34

 
Payne_of_Death
24-05-2003, 19:02 
 
Original geschrieben von wahsaga
den ansatz halte ich schon für falsch.

<b>LP</b> (<i>Best-Nr: 34</i>)<br>
ist lediglich eine formatierung zur anzeige von daten, die daten selber solltest du aber so wie sie sind übergeben, also z.b. ?lp=labersuelz&bestnr=34

-> Da muss ich zustimmen.

Um in einem Feld einen Teilstring zu ermitteln und damit anzuzeigen kannst du "like" einsetzen
bsp:
select * from table where interpret like 'dj.m';

um mehrere Felder abzufragen wäre es unlogisch diese zu verknüpfen, da dann so gut wie kein Datensatz gefunden wird daher mit "or" verknüpfen.

Um die Häufigkeit zu ermitteln könnte man einfach die Datensätze zählen die gefunden worden sind z.B.

select count(*) from table where interpret like 'dj.m' or song like 'par'

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:35 Uhr.