WebWork Magazin - Webseiten erstellen lassen, Online Medien, html

Webhoster, Webhosting Provider und Domain registrieren

Home | Registrieren | Einloggen | Suchen | Aktuelles | GSL-Webservice | Suleitec Webhosting
Reparatur-Forum | Elektro forum | Ersatzteilshop Haushalt und Elektronik


Homepage und Webhosting-Forum

Scripte und Programme für PHP, MYSQL. Diskussionen zur Programmierung im Web. Fragen zu CMS, Blogsoftware, Shops, Newsletter und vielen weiteren Scripten.


Forum » PHP & MySQL » Prob mit DB-Abfrage per PHP » Antworten
Benutzername:
Passwort: Passwort vergessen?
Inhalt der Nachricht: Fett | Kursiv | Unterstrichen | Link | Bild | Smiley | Zitat | Zentriert | Quellcode| Kleiner Text
Optionen: Emailbenachrichtigung bei Antworten
 

Die letzten 5 Postings in diesem Thema » Alle anzeigen
von Bitte64Bits
Nachtrag:

if ($genre!=NULL) {$sql_genre_string="genre='$genre'";} else $sql_genre_string=NULL;

if (strlen($suchbegriff)>2) {$sql_suchbegriff_string="(titel LIKE '$suchbegriff' or interpret LIKE '$suchbegriff')";} else $sql_suchbegriff_string=NULL;

if (($sql_suchbegriff_string!=NULL) AND ($sql_genre_string!=NULL)) {$sql_verknuepfung=" and ";} else $sql_verknuepfung=NULL;

$result = mysql_query("SELECT * FROM cdauswahl WHERE ".$sql_genre_string.$sql_verknuepfung.$sql_suchbegriff_string);

Könnte funktionieren...habs ned getestet...dürfte aber in etwa dem entsprechen, was Du meintest. [keine Gewähr für Punkt/Klammer/Komma/Semikolon-Fehler ;)]

MfG

[ Diese Nachricht wurde geändert von: Bitte64Bits am 2002-10-28 00:51 ]
von Bitte64Bits
$result = mysql_query("SELECT * FROM cdauswahl WHERE genre='$genre' and (titel LIKE '$suchbegriff' or interpret LIKE '$suchbegriff')");

PS: Am besten, du logst anfangs alle Suchbegriffe mit, bei denen die Trefferanzahl = NULL ist. Wozu? Du wirst staunen, wie "unkonventionell" manche Leute suchen. Dann kannst Du die Suchroutine noch bissl anpassen.
Leg am besten auch eine Mindeststringlänge für den $suchbegriff fest (evtl. 3) - sonst werden bei Suche nach z.B. "d" alle CDs eines genres aufgelistet, deren Titel / Interpret ein "d" enthalten...also etwa 99,9% aller Einträge ;)

...bla bla...ich könnte ewiglich weitertexten. Probier einfach und poste bei evtl. Probs.

MfG
ich ;)
von bregovic
Sorry, wenn das etwas unverständlich rübergekommen ist.
das Ganze soll so ne Art suchfunktion sein. Ich habe mehrere Felder nach den man suchen kann. Das Genre ist ein Pulldown-Menü. Ich habe auch noch weitere Felder (z.B.Titel, Interpret). Wird jetzt z.B. als Interpret "Springsteen eingegeben, so soll alles von Bruce Springsteen ausgegeben werden. Wird als Genre Rock eingegeben, so soll alles angezeigt werden, was in der DB unter Rock eingetragen ist usw.

Tom
von NetDrag
was meinst du mit auswerten? Was willst du denn auswerten


---
We are born wet, naked and hungry, then things got worse!
von bregovic
Hi,
ich habe folgendes Formular:

<FORM ACTION="prof_suche.php" METHOD=POST>
CD-Titel <INPUT Titel="cd_titel" TYPE=TEXT SIZE="20" MAXLENGTH="80"><br><br>
Musik-Titel <INPUT Titel="musik_titel" TYPE=TEXT SIZE="20" MAXLENGTH="80"><br><br>
Interpret <INPUT Interpret="interpret" TYPE=TEXT SIZE="20" MAXLENGTH="80"><br><br>
Genre:
<SELECT NAME="genre">
<OPTION>Rock
<OPTION>Pop
<OPTION>Techno
<OPTION>House
<OPTION>Disco
<OPTION>OST
<OPTION>Klassik
<OPTION>Jazz
<OPTION>Indie
<OPTION>Deutsch
</SELECT><br><br>
<INPUT VALUE="Formular abschicken" TYPE=SUBMIT><INPUT VALUE="Formular löschen" TYPE=RESET>
</form>


dazu folgebdes Script zur Auswertung:

<?php
session_start();
include_once($pfad_include_verzeichnis."connect_db.php");
$result = mysql_query("SELECT * FROM cdauswahl WHERE genre='$genre'");

while($zeile=mysql_fetch_array($result))
{
for($i=0;$i<12;$i++)
{
echo $zeile[$i]."<br>";
}
}

mysql_free_result($result);

?>


Zur Zeit sucht das Script alle CD's nach dem Genre raus. Um dieses auszuwerten, je nach Auwahl, muss ich da mit if arbeiten? Bin mir da momentan nicht ganz so sicher.

Gruß
Tom

Nach oben