Ja, doofer Titel, ich weiß. Mir ist aber nichts besseres eingefallen
Habe eine Datenbank, voll mit Werten wie es sich gehört. Viele Spalten enthalten nur ein "X" für True, andere eine Zahl (Leer = nicht vorhanden, Zahl > 0 = Anzahl von z.B. Aufzügen oder was weiß ich). Dies frage ich per Array ab:
[src=php]while ($zeile = mysql_fetch_array($erg, MYSQL_ASSOC)) {
$filter = array('wert1' => 'X', 'wert2' => 'X','wert3' => 'X', 'wert4' => $zeile['wert4'], 'strom' => $zeile['strom']);
foreach (($fields ) as $name => $value) {
if (($value == 1) or ($value == 'X')) {
echo '<img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (($value > 1) and ($value != 'X')) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png">';
}
}
}[/src]
Hintergrund ist der das ich aus einer Datenbank die vornehmlich für Print gedacht ist, Fließtext bzw. die Vorlage für ein eBook generiere. Dazu gibt es hier nämlich keine Software, die jetzige Software ist zu alt um eBook-Fähiges Material zu generieren.
Im oberen Fall handelt es sich um eine Auflistung von Werten. Ein mal Welche wo nur das Symbol auftaucht, andere wo ein Symbol + ein Zahlenwert auftaucht. Klappt so weit alles. Die Symbole heißen so wie in dem Array als ersten Wert angegeben.
Leider habe ich nun einen Sonderfall bei Zwei Werten. Diese sind nämlich nicht nur von zwei Werten abhängig sondern beziehen sich auch noch zwei zusätzliche Spalten. Es handelt sich hier um Strom und Stromstärke. Ich habe also folgendes Szenario:
Ist der Value also = 1 oder = X so wird nur das Symbol ausgegeben. Ist der Value größer 1 oder ungleich X wird das Symbol mit dem Wert ausgespuckt. Was ist nun aber wenn ich zusätzlich noch einen Wert habe? Nämlich die Stromstärke in dem Fall. Ich habe also z.B. einen Value von 200 UND dazu noch eine Stromstärke von 5 Ampere. Wie bekomme ich das ausgegeben? Siehe oben bei $zeile['strom']. Value "strom" ist der Symbolname, $zeile['strom'] ist der Wert, quasi die Anzahl. Nun kommt noch z.B. $zeile['stromstaerke'] dazu. Das sollte dann z.B. in dieser Form erfolgen:
[src=php]echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png"> ('.$stromstaerke.' Ampere)';[/src]
Sprich
[src=php]while ($zeile = mysql_fetch_array($erg, MYSQL_ASSOC)) {
$filter = array('wert1' => 'X', 'wert2' => 'X','wert3' => 'X', 'wert4' => $zeile['wert4'], 'wert5' => $zeile['wert5']);
foreach (($fields ) as $name => $value) {
if (($value == 1) or ($value == 'X')) {
echo '<img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (($value > 1) and ($value != 'X')) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (was ist hier zu tun bzw. zusammenzufassen um den dritten Wert abzufangen) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png"> ('.$stromstaerke.' Ampere)';
}
}
}[/src]
Habe schon Dinge wie
[src=php]if ($zeile['stromampere'] > 0) {
$stromampere = '('.$zeile['stromampere'].'A)';
} else {
$stromampere = '';
}[/src]
vor der while-Schleife probiert und dann im Am ende beim Symbol mit angegeben. Da aber durch itteriert wird tauchen die Werte dann logischerweise bei allen Symbolen auf, auch bei denen die gar kein Stromsymbol haben was ja quatsch ist.
Ich hab das dumpfe gefühl das ich einfach nur total auf dem Schlauch stehe und/oder zu doof bin
Hat einer von euch Imput?
Vielen Dank im Vorraus
Gruß godlike
Habe eine Datenbank, voll mit Werten wie es sich gehört. Viele Spalten enthalten nur ein "X" für True, andere eine Zahl (Leer = nicht vorhanden, Zahl > 0 = Anzahl von z.B. Aufzügen oder was weiß ich). Dies frage ich per Array ab:
[src=php]while ($zeile = mysql_fetch_array($erg, MYSQL_ASSOC)) {
$filter = array('wert1' => 'X', 'wert2' => 'X','wert3' => 'X', 'wert4' => $zeile['wert4'], 'strom' => $zeile['strom']);
foreach (($fields ) as $name => $value) {
if (($value == 1) or ($value == 'X')) {
echo '<img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (($value > 1) and ($value != 'X')) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png">';
}
}
}[/src]
Hintergrund ist der das ich aus einer Datenbank die vornehmlich für Print gedacht ist, Fließtext bzw. die Vorlage für ein eBook generiere. Dazu gibt es hier nämlich keine Software, die jetzige Software ist zu alt um eBook-Fähiges Material zu generieren.
Im oberen Fall handelt es sich um eine Auflistung von Werten. Ein mal Welche wo nur das Symbol auftaucht, andere wo ein Symbol + ein Zahlenwert auftaucht. Klappt so weit alles. Die Symbole heißen so wie in dem Array als ersten Wert angegeben.
Leider habe ich nun einen Sonderfall bei Zwei Werten. Diese sind nämlich nicht nur von zwei Werten abhängig sondern beziehen sich auch noch zwei zusätzliche Spalten. Es handelt sich hier um Strom und Stromstärke. Ich habe also folgendes Szenario:
Ist der Value also = 1 oder = X so wird nur das Symbol ausgegeben. Ist der Value größer 1 oder ungleich X wird das Symbol mit dem Wert ausgespuckt. Was ist nun aber wenn ich zusätzlich noch einen Wert habe? Nämlich die Stromstärke in dem Fall. Ich habe also z.B. einen Value von 200 UND dazu noch eine Stromstärke von 5 Ampere. Wie bekomme ich das ausgegeben? Siehe oben bei $zeile['strom']. Value "strom" ist der Symbolname, $zeile['strom'] ist der Wert, quasi die Anzahl. Nun kommt noch z.B. $zeile['stromstaerke'] dazu. Das sollte dann z.B. in dieser Form erfolgen:
[src=php]echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png"> ('.$stromstaerke.' Ampere)';[/src]
Sprich
[src=php]while ($zeile = mysql_fetch_array($erg, MYSQL_ASSOC)) {
$filter = array('wert1' => 'X', 'wert2' => 'X','wert3' => 'X', 'wert4' => $zeile['wert4'], 'wert5' => $zeile['wert5']);
foreach (($fields ) as $name => $value) {
if (($value == 1) or ($value == 'X')) {
echo '<img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (($value > 1) and ($value != 'X')) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png">';
}
if (was ist hier zu tun bzw. zusammenzufassen um den dritten Wert abzufangen) {
echo $value.' <img src="http://www.domain.de/symbole/'.$name.'.png"> ('.$stromstaerke.' Ampere)';
}
}
}[/src]
Habe schon Dinge wie
[src=php]if ($zeile['stromampere'] > 0) {
$stromampere = '('.$zeile['stromampere'].'A)';
} else {
$stromampere = '';
}[/src]
vor der while-Schleife probiert und dann im Am ende beim Symbol mit angegeben. Da aber durch itteriert wird tauchen die Werte dann logischerweise bei allen Symbolen auf, auch bei denen die gar kein Stromsymbol haben was ja quatsch ist.
Ich hab das dumpfe gefühl das ich einfach nur total auf dem Schlauch stehe und/oder zu doof bin
Hat einer von euch Imput?
Vielen Dank im Vorraus
Gruß godlike