Filterfunktion in SQL und PHP
Hallo,
ich bin neu hier und am verzweifeln... Hilfe!
Es geht um die Abfrage einer MySQL-Datenbank mit PHP und die Möglichkeit der Filterung der Daten in PHP.
Es liegen Datensätze in folgendem Format vor:
ID, Nummer, Meldung, Datum
Mein Problem ist folgendes, ich bekomme von einem Drittprogramm einen festen Datensatz geliefert. Dieser wird automatisch in eine mySQL-Datenbank eingesetzt. Um nun den Datensatz auf einer Webseite klar und deutlich anzeigen zulassen, muss das Feld "Nummer" gegen einen Alphanummerischen Schlüssel ausgetauscht werden.
Beispiel: Feld "Nummer" enthält eine 1, die Zahl 1 ist immer dem Mitarbeiter X zugeordnet. Zahl 2 Mitarbeiter Y.
Ich brauche einen Codeschnipsel, der mich auf den richtigen Weg bringt.
Hier mein bisheriger Code zur Anzeige des Inhaltes:
Wie bekomme ich es hin, das wenn im Feld "Nummer" die 1 steht, er mir "Mitarbeiter X" anzeigt?
Danke euch für die Hilfe!
Grüße
Moppelme
ich bin neu hier und am verzweifeln... Hilfe!
Es geht um die Abfrage einer MySQL-Datenbank mit PHP und die Möglichkeit der Filterung der Daten in PHP.
Es liegen Datensätze in folgendem Format vor:
ID, Nummer, Meldung, Datum
Mein Problem ist folgendes, ich bekomme von einem Drittprogramm einen festen Datensatz geliefert. Dieser wird automatisch in eine mySQL-Datenbank eingesetzt. Um nun den Datensatz auf einer Webseite klar und deutlich anzeigen zulassen, muss das Feld "Nummer" gegen einen Alphanummerischen Schlüssel ausgetauscht werden.
Beispiel: Feld "Nummer" enthält eine 1, die Zahl 1 ist immer dem Mitarbeiter X zugeordnet. Zahl 2 Mitarbeiter Y.
Ich brauche einen Codeschnipsel, der mich auf den richtigen Weg bringt.
Hier mein bisheriger Code zur Anzeige des Inhaltes:
if ( ! $link ) die ( "keine Verbindung zum MySQL-Server" );
mysql_select_db( $db, $link) or die ("Konnte Datenbank \"$db\" nicht oeffnen: " . mysql_error() );
$ergebnis = mysql_query("select * from daten WHERE NOT Nummer = '0' LIMIT 0, 600");
$anz_reihen = mysql_num_rows( $ergebnis );
echo "<b>Die letzten $anz_reihen eingegangenen Meldungen<br><br></b>";
echo "<table border=1>";
while ( $datensatz = mysql_fetch_array( $ergebnis ) )
{
echo "<tr>";
echo "<td>$datensatz[id]</td>\n";
echo "<td>$datensatz[nummer]</td>\n";
echo "<td>$datensatz[meldung]</td>\n";
echo "<td>$datensatz[datum]</td>\n";
echo "</tr>";
}
echo "</table>";
mysql_close( $link );
?>
</ul>
Wie bekomme ich es hin, das wenn im Feld "Nummer" die 1 steht, er mir "Mitarbeiter X" anzeigt?
Danke euch für die Hilfe!
Grüße
Moppelme
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 91882
Url: https://administrator.de/contentid/91882
Ausgedruckt am: 26.11.2024 um 21:11 Uhr
1 Kommentar
Hi,
erstelle Dir doch einfach eine zweite Tabelle "Mitarbeiter" in der mySQL -Datenbank mit den Feldern Nummer2 und Mitarbeiter. Dort trägst du einmalig ein, welche Nummer zu welchem Mitarbeiter gehört.
Dann musst du nur noch deine Abfrage
und deine Ausgabe
anpassen.
Gruß
Sleipnir
erstelle Dir doch einfach eine zweite Tabelle "Mitarbeiter" in der mySQL -Datenbank mit den Feldern Nummer2 und Mitarbeiter. Dort trägst du einmalig ein, welche Nummer zu welchem Mitarbeiter gehört.
Dann musst du nur noch deine Abfrage
$ergebnis = mysql_query("select * from daten join Mitarbeiter on daten.nummer = Mitarbeiter.Nummer2 WHERE NOT Nummer = '0' LIMIT 0, 600");
und deine Ausgabe
echo "<tr>";
echo "<td>$datensatz[id]</td>\n";
echo "<td>$datensatz[nummer]</td>\n";
echo "<td>$datensatz[Mitarbeiter]</td>\n";
echo "<td>$datensatz[meldung]</td>\n";
echo "<td>$datensatz[datum]</td>\n";
echo "</tr>";
anpassen.
Gruß
Sleipnir