Zum Inhalt springen

SELECT FROM .... wie am besten


Empfohlene Beiträge

Hi,

ich habe ein Frameset. Im linken Frage ist HTML Navigation. Jeder Link soll eine bestimmte Produktgruppe aus der Datenbank im rechten Frame anzeigen. Frage: Wie realisiert man das am Besten? Ich dachte zuerst die HTML Links auf jeweils eine PHP Datei zu verweisen, welche dann die Sätze aus der DB ausliest. Aber das ist quatsch. Wie macht man es besser?

Grüße

ALL:bimei

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bau dir eine PHP-Datei, an die du als Parameter die Kategorie übergibst.

<a href="datei.php?kat=monitore" target="MainFrame">Link 1</a>

<a href="datei.php?kat=tastaturen" target="MainFrame">Link 2</a>

In der datei.php machst du dann die SQL-Abfrage

<?PHP

$kategorie = $_GET['kat'];

$dbquery = mysql_query("SELECT * FROM inhalt WHERE kategorie = '$kategorie'");

// Ab hier die Ausgabe der Abfrage
?>[/PHP]

Anstelle von Kategorienamen kannst du natürlich auch mit Kategorie-IDs arbeiten, was IMHO noch sinnvoller ist.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

danke erstmal für die schnelle Hilfe! Aber irgendwie ist da jetzt der Hänger drin ... Habe ein paar Fragen:

1. Muss ich in der PHP Datei zum SQL Server / Datenbank verbinden?

2. Muss ich noch irgendwas daruntercoden? Weil es passiert garnichts :(

In der Spalte "produkt" sind zb Monitore, Scanner usw drin ... ich will halt per Link nur die Scanner rausfiltern. Unten ist nochmal mein Quellcode.

Danke MFG

ALL :bimei

<?PHP


$produkt = $_GET['kat'];

$dbquery = mysql_query("SELECT * FROM ind_ven WHERE produkt = '$produkt'");

// Ab hier die Ausgabe der Abfrage


?>[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

du solltest dir erstma die grundkenntnisse von php aneignen bevor du solche fragen stellst.

in deinem source kann ja keine ausgabe kommen, da

1. du noch keine datenbankverbindung offen hast

2. du keine ausgabe im script hast |echo ()

3. du den sql nicht an deine db angepasst hast

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von ssambdar

Bau dir eine PHP-Datei, an die du als Parameter die Kategorie übergibst.

<a href="datei.php?kat=monitore" target="MainFrame">Link 1</a>

<a href="datei.php?kat=tastaturen" target="MainFrame">Link 2</a>

In der datei.php machst du dann die SQL-Abfrage

<?PHP

$kategorie = $_GET['kat'];

$dbquery = mysql_query("SELECT * FROM inhalt WHERE kategorie = '$kategorie'");

// Ab hier die Ausgabe der Abfrage
?>[/PHP]

Anstelle von Kategorienamen kannst du natürlich auch mit Kategorie-IDs arbeiten, was IMHO noch sinnvoller ist. [/b]

Hi alle!

generell kritisch. Parameter sollten AUF JEDEN Fall validiert werden. Denkbar wären Manipulationen am Parameter. Wenn ich als Parameter "kategorie1';DELETE * FROM all" übergebe, und der abfragende DB-user hat auch entsprechende Rechte, steht ihr mit heruntergelassener Unterhose da. Aber auch andere Manipulationen sind denkbar, die Datensätze verfälschen o.ä.

Dass es nicht alle machen, zeigt ein Verfall aus der jüngeren Vergangenheit, in der ich eben solchen Fall bei einem Spieleportal eines Telko-Anbieters (nicht T-Com!) gefunden habe: unvalidierte PHP-Parameter im SQL-Skript. Nach einer Mail hat sich - bis auf eine dankbare Antwort - leider nicht viel getan. Ist aber deren Datenbank und nicht mein Problem.

Gruß,

Florian

PS: Telko = Telekommunikation

Link zu diesem Kommentar
Auf anderen Seiten teilen

hm geht trotzdem nicht ...

	$kategorie = $_GET['kat'];
Table_show ($db, "SELECT * FROM ind_ven where produkt='$kategorie'");





// Funktion Tabelle anzeigen[/PHP]

wenn ich anstelle produkt='$kategorie' produkt='monitore' schreibe bekomme ich ne Ausgabe und alles ist toll. Aber irgendwas stimmt da nicht ... wenn ich anzeige?kat=monitore verlinke bekomme ich wieder keine Ausgabe :(

Grüße

ALL :bimei

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...