Anzeige:
Ergebnis 1 bis 6 von 6

Thema: db werte getrennt ausgeben

  1. #1
    Registrierter Benutzer
    Registriert seit
    21.07.2010
    Beiträge
    20

    db werte getrennt ausgeben

    hi alle zusammen

    folgendes szenario:
    es gibt 3 standorte, zu jedem standort ein produkt das an den anderen standorten nicht verfügbar ist. jedes produkt ist in einer datenbank eingetragen mittels einem location code zB HB oder DM. nun möchte ich anhand dieser location codes sortieren bzw. die ausgabe soll so ungefähr aussehen:

    HB
    produkt1 .....
    produkt2 .......

    DM
    produkt1.....

    usw.
    bitte diesbezüglich um hilfe

    kleine nachträgliche änderung: es können auch mehr als 3 produkte sein, genauso können es auch weniger sein und auch neue standorte können hinzukommen.
    es soll einfach nur alles sortiert aufgelistet werden, egal was ich an einträgen in die datenbank so vornehme.
    Geändert von nixlike (22-07-2010 um 06:34 Uhr)

  2. #2
    Registrierter Benutzer Avatar von jeebee
    Registriert seit
    01.01.2005
    Ort
    Bern || Zürich
    Beiträge
    540
    also so im stil von
    PHP-Code:
    mysql_connect(...)
    $lc=mysql_query("SELECT DISTINCT location_code FROM products");
    while(
    $loc=mysql_fetch_row($lc)) {
        
    $location=$loc[0];
        echo 
    $location."<br />";
        
    $products=mysql_query("SELECT product FROM products WHERE location_code=".$location); // direkte Stringkonkatenierung nur ok, da der Inhalt der Variable aus der DB kommt.
        
    while($prod=mysql_fetch_row($products)) {
            echo 
    $prod[0]."<br />";
        }
        echo 
    "<br />";

    Geändert von jeebee (22-07-2010 um 10:31 Uhr) Grund: sql syntax: UNIQUE -> DISTINCT...
    my very own 128 bit integer
    C4 D3 B8 A8 9E A0 C6 EC 7D EC A8 15 28 D1 92 58
    more information

  3. #3
    Registrierter Benutzer
    Registriert seit
    21.07.2010
    Beiträge
    20
    hab jetzt mal schnell drübergeguckt und ich glaube das ist das wonach ich suchte ^^ dachte mir, dass man das eventuell anders realisieren kann anstatt mit 2xsql query aber so sei es

    werd es dann nachher probieren, vielen dank ^^

  4. #4
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    geht natürlich auch mit einer query

    PHP-Code:

    $lc
    =mysql_query("SELECT product,location_code FROM products order by location_code");
    $location null;
    while(
    $loc=mysql_fetch_row($lc)) {
        if ( 
    $location !== $loc[1] ) {
            
    $location=$loc[1];
            echo 
    $location."<br />";
        }

        echo 
    "{$loc[0]}<br />";


  5. #5
    Registrierter Benutzer
    Registriert seit
    21.07.2010
    Beiträge
    20
    wow, funktioniert perfekt msi

    was ich nicht verstehe ist der letzte punkt, warum {$loc[0]} in geschwungenen klammern steht. denn wenn ich die " mit ' ersetzte (da ich eher mit ' als mit " arbeite) wird das {$loc[0]} direkt als text ausgegeben und nicht die variable dahinter. das korrekte ausgeben hab ich schon hinbekommen, jedoch interessiert mich der hintergrund.

    vielen dank für eure hilfe

  6. #6
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    hier kannst du das nachlesen, scroll vA runter zu "Variable parsing"
    http://php.net/manual/en/language.types.string.php

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •