ERLEDIGT
JA
JA
ANTWORTEN
19
19
ZUGRIFFE
1431
1431
EMPFEHLEN
-
Wie kriege ich das hien, wenn ich eine SQL Abfrage ausführe, und die Daten in eine Tabelle schreibe, dass die 1 Zeile grau wird und die 2 Zeile weiss und die 3 Zeile grau etc...?
-
Beispielsweise so:
Code php:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
<?php $row_classes = array( 'roweven', 'rowodd', ); $result = mysql_query('…'); $row_num = 0; while ($row = mysql_fetch_array($result)) { $row_class = $row_classes[$row_num % 2]; echo '<tr class="'.$row_class.'">'; ⋮ echo '</tr>'; $row_num++; } ?>
Dann noch entsprechend die CSS-Klassen roweven und rowodd definieren und fertig.„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Ich habe es noch nicht hiengekriegt. Woran liegt das?
Der entsprechende Css TeilPHP-Code:<?PHP
include './lab/config.php';
$sort = addslashes($_GET['sort']);
$cat = addslashes($_GET['cat']);
$go = addslashes($_GET['go']);
$row_classes = array(
'roweven',
'rowodd',
);
$query = '
SELECT
*
FROM
`fi`
WHERE `cat`="'.$cat.'"
ORDER BY
'.$sort.' '.$go.'
';
$result = mysql_query($query);
$tmp = null;
$row_num = 0;
while( $row = mysql_fetch_array($result, MYSQL_ASSOC) ) {
if( $tmp != $row[$sort] ) {
if( !is_null($tmp) ) {
}
$row_class = $row_classes[$row_num % 2];
echo "<table border='0' width='688' width='95%' cellspacing='0' cellpadding='0'><tr bgcolor='D9D9D9'>";
echo "<td colspan='10'>$row[$sort]</td></tr><br>";
$tmp = $row[$sort];
}
echo "
<tr class='.$row_class.'><td width='5'></td>
<td><a href='".$row['http4']."' target='_self'><img src='../03/icons/".$row['icon']."' align='absbottom' alt='' border='0' /></a>
<a href='".$row['http4']."' target='_self'>".$row['name']."</a></td>
<td width='6'></td>
<td>'".$row['res']."'</td>
<td width='6'></td>
<td>'".$row['size']."'</td>
<td width='6'></td>
<td>'".$row['count']."'</td>
<td width='6'></td>
<td>'".$row['date']."'</td>
</tr>";
$row_num++;
}
if( !is_null($tmp) ) {
}
echo "</table>";
?>
HTML-Code:.roweven { background-color: #dcdcdc; } .rowodd { background-color: #dcdcdc; }
-
Huhu asdfg. Dein Fehler liegt hier:
Du musst den beiden CSS-Klassen auch verschiedene Farben zuweisenHTML-Code:.roweven { background-color: #dcdcdc; } .rowodd { background-color: #dcdcdc; }
Z.B. #dcdcdc und #cdcdcd.
Hui, das is auch mal ne coole Lösung
Ich hab das bisher immer wie folgt gemacht:PHP-Code:$nr_class= 0; // Zaehler definieren
while( $row = mysql_fetch_assoc( $sql ) )
{
$nr_class++; // Zaehler bei jeder Ausgabe um 1 erhöhen
$style = $nr_class % 2 == 0 ? 'style1' : 'style2'; // Prüfen, ob der der Rest von Zaehler/2 == 0 ist. Falls ja, dann wird der Variable der Wert "style1" zugewiesen, ansonsten der Wert "style2"
echo '<table>';
echo '<tr><td class=" . $style . "> </td></tr>'; // Einfügen des Wertes der Variable $style ("style1" oder "style2")
echo '</table>';
}
Geändert von muhkuh (05.03.06 um 00:14 Uhr)
-
Scheint nicht zu funktionieren:
PHP-Code:<?PHP
include './lab/config.php';
$sort = addslashes($_GET['sort']);
$cat = addslashes($_GET['cat']);
$go = addslashes($_GET['go']);
$row_classes = array(
'roweven',
'rowodd',
);
$query = '
SELECT
*
FROM
`fi`
WHERE `cat`="'.$cat.'"
ORDER BY
'.$sort.' '.$go.'
';
$result = mysql_query($query);
$tmp = null;
$row_num = 0;
while( $row = mysql_fetch_array($result, MYSQL_ASSOC) ) {
if( $tmp != $row[$sort] ) {
if( !is_null($tmp) ) {
}
$row_num++;
$row_class = $row_num % 2 == 0 ? 'roweven' : 'rowodd';
echo "<table border='0' width='688' width='95%' cellspacing='0' cellpadding='0'><tr bgcolor='D9D9D9'>";
echo "<td colspan='10'>$row[$sort]</td></tr><br>";
$tmp = $row[$sort];
}
echo "
<tr class=".$row_class."><td width='5'></td>
<td><a href='".$row['http4']."' target='_self'><img src='../03/icons/".$row['icon']."' align='absbottom' alt='' border='0' /></a>
<a href='".$row['http4']."' target='_self'>".$row['name']."</a></td>
<td width='6'></td>
<td>'".$row['res']."'</td>
<td width='6'></td>
<td>'".$row['size']."'</td>
<td width='6'></td>
<td>'".$row['count']."'</td>
<td width='6'></td>
<td>'".$row['date']."'</td>
</tr>";
}
if( !is_null($tmp) ) {
}
echo "</table>";
?>Geändert von asdfg (05.03.06 um 09:04 Uhr)
-
Ohne entsprechende Tabelle/Daten ist es schwer nachzuvollziehen, was genau nicht funktioniert und woran dies liegen könnte. Ein paar mehr Informationen über den vermeintlichen Fehler wäre also hilfreich.
Markus Wulftange
-
Hast du dir schon mal den ausgegebenen HTML-Quellcode angesehen? Anscheinend nicht, denn sonst wäre dir sofort aufgefallen, dass hier <tr class='.roweven.'> ausgegeben wird anstatt <tr class='roweven'>.Code php:
1 2 3 4
echo " <tr class='.$row_class.'><td width='5'></td> …
„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
05.03.06 01:27 #8Beheben tut man das natürlich, indem man ".$row_class." schreibt ...
Zitat von Matthias Reitinger
-
Diese Überlegung hätte ich jetzt gern unter dem Stichwort „Eigeninitiative“ dem Originalposter überlassen
„Gib einem Menschen einen Fisch, und er wird für einen Tag satt. Lehre ihn Fischen, und er wird ein Leben lang satt.“
“For every complex problem, there is an answer that is short, simple and wrong.”
“Pessimism is safe, but optimism is a lot faster!”
Aktuelles Coding Quiz: #17 - Wörter kreuz und quer
-
Sehr aufmerksam, aber selber zu dieser Zeit leider nicht mehr so aktiv.
Nun hat mich hier jemand falsch verstanden, denn ich möchte:
Nun ist hier aber ein ganzer Abschnitt grau/weiss/grau.
Zitat von asdfg
Geändert von asdfg (05.03.06 um 09:04 Uhr)
-
Dann nimm den Algorithmus zur Wahl der alternierenden Klasse eben aus der if-Kontrollstruktur. Etwas Eigeninitiative …
Markus Wulftange
-
Sorry, was ist ein "Algorithmus"?
-
Schlag das Wort doch einfach im Lexikon nach:
Zitat von [url=http://de.wikipedia.org/wiki/Algorithmus]Wikipedia – Algorithmus[/url]
Markus Wulftange
-
Aber dann ist das Thema nicht beantwortet bzw. erledigt!
Natürlich währe eine Erklärung in Bezug auf diese Thema Voraussetzung gewesen!Geändert von asdfg (05.03.06 um 09:44 Uhr)
-
Ist das wirklich so schwer?
Übrigens solltest du Tabellen nicht als Layout-Mittel missbrauchen.PHP-Code:<?php
include './lab/config.php';
$row_classes = array(
'roweven',
'rowodd',
);
$query = '
SELECT
*
FROM
`fi`
WHERE
`cat` = "'.mysql_real_escape_string($_GET['cat']).'"
ORDER BY
'.mysql_real_escape_string($_GET['sort']).' '.mysql_real_escape_string($_GET['go']).'
';
$result = mysql_query($query);
$tmp = null;
$row_num = 0;
while( $row = mysql_fetch_array($result, MYSQL_ASSOC) ) {
$row_class = ++$row_num % 2 == 0 ? 'roweven' : 'rowodd';
if( $tmp != $row[$sort] ) {
echo '<table border="0" width="688" width="95%" cellspacing="0" cellpadding="0">';
echo '<tr bgcolor="D9D9D9"><td colspan="10">'.$row[$sort].'</td></tr>';
$tmp = $row[$sort];
}
echo '<tr class="'.$row_class.'"><td width="5"></td>
<td><a href="'.$row['http4'].'" target="_self"><img src="../03/icons/'.$row['icon'].'" align="absbottom" alt="" border="0" /></a>
<a href="'.$row['http4'].'" target="_self">'.$row['name'].'</a></td>
<td width="6"></td>
<td>'.$row['res'].'</td>
<td width="6"></td>
<td>'.$row['size'].'</td>
<td width="6"></td>
<td>'.$row['count'].'</td>
<td width="6"></td>
<td>'.$row['date'].'</td>
</tr>';
}
echo '</table>';
?>Markus Wulftange
Ähnliche Themen
-
50 % Grau ist nicht 50 % Grau
Von nanda im Forum PhotoshopAntworten: 3Letzter Beitrag: 23.04.08, 22:07 -
Navigation: Weiss - Grau - Schwarz
Von Comenius im Forum Flash PlattformAntworten: 4Letzter Beitrag: 30.11.05, 22:14 -
Ebene grau
Von schnarnd im Forum Cinema 4DAntworten: 6Letzter Beitrag: 21.06.04, 22:42 -
Grau färben
Von tomi im Forum PhotoshopAntworten: 3Letzter Beitrag: 05.07.02, 11:20





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren