php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.11.2008, 09:08  
Neuer Benutzer
 
Registriert seit: 17.10.2008
Beiträge: 8
nullliver befindet sich auf einem aufstrebenden Ast
Standard Suche nach Auswahlkriterien

Hallo,

stellt Euch eine Datenbank vor, bei der jeder Datensatz mehreren Rubriken zugeordnet sein kann. Jeder Datensatz hat 10 Rubrikfelder, welche jeweils 0 oder 1 sein können.

Ich möchte eine Datenbankabfrage realisieren, bei der im HTML-Formular die Rubriken (nach denen ich filtern möchte) via Checkbox-Häkchen gewählt werden können.

Ich möchte nun alle Einträge aus der Datenbank suchen bei denen die Rubrik mit den ausgewählten übereinstimmt.

Wie baut man so eine Abfrage auf? Muss ich da eine Schleife machen oder gibts was einfacheres?

Vielen Dank, Oli
nullliver ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.11.2008, 09:19  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

"WHERE" wird dir dabei helfen.
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline   Mit Zitat antworten
Alt 03.11.2008, 14:08  
Neuer Benutzer
 
Registriert seit: 17.10.2008
Beiträge: 8
nullliver befindet sich auf einem aufstrebenden Ast
Standard

...aber wie binde ich das "Where" via PHP in die Abfrage ein? Hierzu brauche ich doch für jede Rubrik eine Schleife, oder?
nullliver ist offline   Mit Zitat antworten
Alt 03.11.2008, 14:18  
Moderator
 
Registriert seit: 06.06.2008
Beiträge: 4.945
PHP-Kenntnisse:
Fortgeschritten
Wolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer AnblickWolla ist ein wunderbarer Anblick
Wolla eine Nachricht über ICQ schicken
Standard

... WHERE rub1='$rub1' AND rub2='$rub2' AND rub3='$rub3' AND rub4='$rub4' ...

wobei du ungesetzte Rubriken aus dem Querystring rauslassen musst.
__________________
Warum denkt mein Hund eigentlich immer dann, wenn es an der Tür klingelt, es sei für ihn?
Wolla ist offline   Mit Zitat antworten
Alt 03.11.2008, 14:18  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ich hab immer noch nicht verstanden was jetzt Ist/Soll-Zustand genau darstellt.

Außerdem glaube ich das deine Tabellenstruktur nicht gerade vorteilhaft ist. Die Rubriken haben sicher auch Namen usw oder? Dann arbeite mit einer n:m Beziehung und nicht mit 10 einzelnen Feldern pro Datensatz.
cycap ist offline   Mit Zitat antworten
Alt 03.11.2008, 15:26  
Neuer Benutzer
 
Registriert seit: 17.10.2008
Beiträge: 8
nullliver befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von cycap Beitrag anzeigen
Ich hab immer noch nicht verstanden was jetzt Ist/Soll-Zustand genau darstellt.

Außerdem glaube ich das deine Tabellenstruktur nicht gerade vorteilhaft ist. Die Rubriken haben sicher auch Namen usw oder? Dann arbeite mit einer n:m Beziehung und nicht mit 10 einzelnen Feldern pro Datensatz.
Soll ich quasi eine separate Tabelle erstellen, in der ich die Rubriken den Datensätzen zuordne bzw. die Beziehung beider zueinander herstelle?

Ich weiß aber noch immer nicht wie ich dann die nicht-ausgewählen Rubriken in der Suche weglasse....
nullliver ist offline   Mit Zitat antworten
Alt 03.11.2008, 15:56  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Zitat:
Zitat von nullliver Beitrag anzeigen
Soll ich quasi eine separate Tabelle erstellen, in der ich die Rubriken den Datensätzen zuordne bzw. die Beziehung beider zueinander herstelle?
Ja.


Zitat:
Ich weiß aber noch immer nicht wie ich dann die nicht-ausgewählen Rubriken in der Suche weglasse....
Mit if ?
cycap ist offline   Mit Zitat antworten
Alt 04.11.2008, 06:40  
Neuer Benutzer
 
Registriert seit: 17.10.2008
Beiträge: 8
nullliver befindet sich auf einem aufstrebenden Ast
Standard

OK...

kann ich denn innerhalb eines mysql-query eine PHP-if-Unterscheidung machen (bzw. mehrere if-Unterscdheidungen)?
nullliver ist offline   Mit Zitat antworten
Alt 04.11.2008, 08:25  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Entweder ich kapier nich was du willst oder du hast das Prinzip nicht verstanden. Oder beides.

PHP-Code:
$rubriken = array();
if(isset(
$_POST['haken1']))
  
$rubriken[] = 1// 1 ist die ID der Rubrik zu dem Häckchen
if(isset($_POST['haken2']))
  
$rubriken[] = 2;
if(isset(
$_POST['haken3']))
  
$rubriken[] = 3;

$sql "SELECT xyz FROM tabelle AS tab
          LEFT JOIN zuordnungs_tabelle AS zt  ON tab.id = zt.id_tab
          WHERE zt.id_rubrik IN("
.implode(',',$rubriken).") "
cycap ist offline   Mit Zitat antworten
Alt 04.11.2008, 08:36  
Erfahrener Benutzer
 
Registriert seit: 28.03.2008
Beiträge: 1.847
HPR1974 wird schon bald berühmt werden
Standard

ich würde erstmal die DB Struktur normalisieren, sonst haste beim nächsten Attribut wieder ein Problem...
HPR1974 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Suche Mitarbeiter für Feuerwehr / Polizei & Rettungsdienst Browsergame.. h3nny Beitragsarchiv 9 01.02.2009 14:56
Problem mit foren suche programmieren! litterauspirna PHP Tipps 2008 4 17.08.2008 12:17
Verbesserungsvorschläge: Design und Suche Manko10 Board-Support 3 15.06.2008 16:21
Suche 'strahlfreudigen' Router nikosch Off-Topic Diskussionen 6 22.01.2008 19:06
Suche in Office Dateien mit Index Beatbox Off-Topic Diskussionen 6 09.02.2007 15:34
Suche Alienuser PHP Tipps 2006 5 02.07.2006 16:31
suche funktion: suche alles zwischen notyyy PHP Tipps 2006 7 05.06.2006 20:46
[Erledigt] Erweiterung der Suche PHP Tipps 2007 2 01.12.2005 19:30
Suche in Datenbank realisieren Unbekanntes_Pferd PHP Tipps 2007 4 09.11.2005 16:22
suche lösungsweg für komplexe suche, md5hash PHP Tipps 2005-2 3 19.07.2005 17:57
stichwort suche boehseronkel Datenbanken 2 14.07.2005 09:28
mal wieder eine suche lomtas Datenbanken 0 12.07.2005 11:03
Suche Job als Entwickler/Designer (Raum Bonn o. Telearbeit) Beitragsarchiv 23 01.03.2005 14:00
Suche mehrere Images........ Beitragsarchiv 7 10.01.2005 08:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
auswahlkriterien datenbanken, suche mit auswahlkriterien, ich möchte eine html suche mit rubriken erstellen, suche nach mehreren auswahlkriterien php, auswahlkriterien datenbank, datenbank auswahlkriterien, 2 auswahlkriterien beim suchen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:01 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum