CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
12.02.2006, 18:28:54
|
Anfänger
|
|
Registriert seit: Feb 2006
Beiträge: 18
|
|
Formatierung bei Tabellenausgabe PHP/MySQL
Ich programmiere noch nicht lange und habe auch versucht mir bis jetzt alles mögliche selbst anzueignen. Nun stehe ich und bin dankbar für jede mithilfe.
Ganz einfache Problemstellung:
Eine Tabelle wird über PHP aus einer MySQL-Datenbank ausgegeben und ich möchte, dass die Schattierungen der Zeilen wechseln (grau/weiß/grau/weiß usw.).
Wäre super, wenn das einer von Euch weiß. DANKE!
|
12.02.2006, 18:37:38
|
Junior Member
|
|
Registriert seit: Jul 2004
Beiträge: 213
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
Warum postest du dann unter "PHP für Fortgeschrittene und Experten"?
Naja, egal.
Also das ganze ist jetzt eigentlich ein HTML-Problem oder? Schonmal bei SelfHTML nachgeschaut (Stichwort: CSS)?
http://de.selfhtml.org/css/eigenscha...ckground_color
Ansonsten hat das Problem ja auch gar nichts damit zu tun, dass du Werte aus einer DB liest. Du baust eine Tabelle mit PHP und moechtest die Zeilen einfaerben.
Also da ich deinen Code ja nicht kenne hier mal ne allgemeine Loesung:
Erschaffe dir eine Variable, die dir die aktuelle Schattierung merkt.
Jedesmal wenn du nun eine neue Zeile beginnst, aenderst du die Variable, je nachdem, welchen Wert sie vorher hatte.
Und anhand dieser Variablen gibst du deinen CSS-Befehl fuer die Hintergrundfarbe in der Tabellenzelle aus.
__________________
Trapper: "This war is turning everybody into a criminal and it's making me sick."
Hawkeye: "Well next time try to stay out of the draft."
|
12.02.2006, 18:54:09
|
Administrator
|
|
Registriert seit: Jan 2002
Ort: Köln
Alter: 53
Beiträge: 1.276
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
Hi,
ein wenig anpassen musst du aber selber.....
PHP-Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Abwechselnde Zeilenfarben</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
.tableLine
{
font-family: Verdana,Arial,sans-serif;
font-style: normal;
font-size: 9px;
BORDER-TOP: #A6A6A6 1px solid;
BORDER-LEFT: #A6A6A6 1px solid;
BORDER-BOTTOM: #A6A6A6 1px solid;
BORDER-RIGHT: #A6A6A6 1px solid;
}
.row_0 {
background-color: #FFFFFF;
}
.row_1 {
background-color: #E1E8F1;
}
-->
</style>
</head>
<body>
<table width="300" border="0" cellpadding="0" cellspacing="0" class="tableLine">
<?PHP
for($i=0;$i<=9;$i++){
?>
<tr>
<td class="row_<?PHP echo $i % 2; ?>">Reihe <?PHP echo $i; ?></td>
</tr>
<?PHP
}
?>
</table>
</body>
</html>
Bye Damir
|
12.02.2006, 18:56:19
|
Anfänger
|
|
Registriert seit: Feb 2006
Beiträge: 18
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
sorry schonmal für das falsche Forum!!!
Das Problem liegt prinzipiell schon in der HTML-Codierung, doch über diese kann ich die hintergrundfarben nicht automatisch wechseln lassen. Das kann ich nur über eine Variable vor der PHP-Ausgabe.
$farbe1=xy
$farbe2=cc
Wie kann ich diese zwei Variablen in einer normalen PHP-Ausgabe je Zeile wechseln lassen?
Der Code:
<?
echo "<table width='500' valign='top' align='center' cellspacing='0'>";
include ("config.php");
mysql_connect($server,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM $get_tabelle order by datum desc";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$id=mysql_result($result,$i,"id");
$titel=mysql_result($result,$i,"titel");
$text_1=mysql_result($result,$i,"text_1");
$text_2=mysql_result($result,$i,"text_2");
$datum=mysql_result($result,$i,"datum");
echo "
<tr>
<td <a href='index.php?tabelle=$get_tabelle&id=$id'>$datum // $titel</a></td>
</tr>
";
$i++;
}
echo "</table>";
?>
|
12.02.2006, 18:58:05
|
Anfänger
|
|
Registriert seit: Feb 2006
Beiträge: 18
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
hm, damir war schneller beim antworten ;) Danke werds mal ausprobieren!
|
12.02.2006, 18:59:30
|
Administrator
|
|
Registriert seit: Jan 2002
Ort: Köln
Alter: 53
Beiträge: 1.276
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
Wie gesagt,
ein wenig umschreiben musst du selber - da ich gerade ein neues Buch schreibe hatte ich diese Loesung auch schnell zur Hand - wird im Buch auch vorkommen allerdings modifiziert.
Die Umstellung an dein Skript sollte allerdings sehr leicht sein...
Bye Damir
|
17.02.2006, 07:14:14
|
Anfänger
|
|
Registriert seit: Feb 2006
Beiträge: 18
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
hm, das umschreiben ist seeeehr zach....sorry wenn ich das so sage, aber kriege das in meiner abfrage nicht hin, dass die zahl je zeile zwischen 0 und 1 wechselt...vielleicht kann mir wer helfen...danke!
PHP-Code:
<?
echo "
<table width='480' align='center' cellspacing='0'>
<TR>
<td colSpan='3' align='middle'> <p><strong>Spieltermin </strong></p></td>
<td ><strong>Spielort</strong></td>
<td ><strong>Beginn</strong></td>
<td ><strong>Heimteam</strong></td>
<td ><strong>Auswärtsteam</strong></td>
<td colspan='3'> <p><strong> Ergebnis</strong></p></td>
</TR>
";
include ("config.php");
mysql_connect($server,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM vi_spielplan order by spieldatum asc";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$id_spiel=mysql_result($result,$i,"id_spiel");
$spielnummer=mysql_result($result,$i,"Spielnummer");
$spieltag=mysql_result($result,$i,"Spieltag");
$spieldatum=mysql_result($result,$i,"Spieldatum");
$spielort=mysql_result($result,$i,"Spielort");
$beginn=mysql_result($result,$i,"Beginn");
$heimteam=mysql_result($result,$i,"Heimteam");
$gastteam=mysql_result($result,$i,"Gastteam");
$ergebnis_heim=mysql_result($result,$i,"Ergebnis_Heim");
$ergebnis_gast=mysql_result($result,$i,"Ergebnis_Gast");
echo "
<tr>
<td >#$spielnummer</td>
<td >$spieltag</td>
<td >$spieldatum</td>
<td >$spielort</td>
<td >$beginn</td>
<td >$heimteam</td>
<td >$gastteam</td>
<td >$ergebnis_heim</td>
<td >:</td>
<td >$ergebnis_gast</td>
</tr>
";
$i++;
}
echo "</table>";
?>
Noch eine Anmerkung: Die styles sind in einer externen css datei und über config.php werden diese über $style_0, $style_1 vordefiniert (0 ohne bg, 1 mit bg)
DANKE!
|
17.02.2006, 08:40:17
|
Administrator
|
|
Registriert seit: Jan 2002
Ort: Köln
Alter: 53
Beiträge: 1.276
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
Hi,
ist eigentlich sehr einfach wenn man weiss was folgende Zeile zu bedeuten hat:
PHP-Code:
<?PHP echo $i % 2; ?>">
Dabei handelt es sich um Modulo - also den Restwert einer Division. Als Ergebnis bekommst du in diesem Fall entweder 0 (Null) oder 1 zurueck. Du hast in deinem Skript schon alles was du brauchst!!!!!!
PHP-Code:
<?
echo "
<table width='480' align='center' cellspacing='0'>
<TR>
<td colSpan='3' align='middle'> <p><strong>Spieltermin </strong></p></td>
<td ><strong>Spielort</strong></td>
<td ><strong>Beginn</strong></td>
<td ><strong>Heimteam</strong></td>
<td ><strong>Auswärtsteam</strong></td>
<td colspan='3'> <p><strong> Ergebnis</strong></p></td>
</TR>
";
include ("config.php");
mysql_connect($server,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="SELECT * FROM vi_spielplan order by spieldatum asc";
$result=mysql_query($query);
$num=mysql_numrows($result);
mysql_close();
$i=0;
while ($i < $num) {
$id_spiel=mysql_result($result,$i,"id_spiel");
$spielnummer=mysql_result($result,$i,"Spielnummer");
$spieltag=mysql_result($result,$i,"Spieltag");
$spieldatum=mysql_result($result,$i,"Spieldatum");
$spielort=mysql_result($result,$i,"Spielort");
$beginn=mysql_result($result,$i,"Beginn");
$heimteam=mysql_result($result,$i,"Heimteam");
$gastteam=mysql_result($result,$i,"Gastteam");
$ergebnis_heim=mysql_result($result,$i,"Ergebnis_Heim");
$ergebnis_gast=mysql_result($result,$i,"Ergebnis_Gast");
$classTable = 'class="style_' . $i % 2 . '">';
echo "
<tr $classTable>
<td >#$spielnummer</td>
<td >$spieltag</td>
<td >$spieldatum</td>
<td >$spielort</td>
<td >$beginn</td>
<td >$heimteam</td>
<td >$gastteam</td>
<td >$ergebnis_heim</td>
<td >:</td>
<td >$ergebnis_gast</td>
</tr>
";
$i++;
}
echo "</table>";
?>
Du meinst sicherlich classTable_0 und nicht $classTable_0
Bye Damir
|
17.02.2006, 21:43:41
|
Anfänger
|
|
Registriert seit: Feb 2006
Beiträge: 18
|
|
AW: Formatierung bei Tabellenausgabe PHP/MySQL
funktioniert perfekt....danke mann ,))
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 16:31:05 Uhr.
|