Kullakeeeks
Hey!
Ich hab ein kleines Problem...ich wollte eine Statistik einführen, die genau aufzeigt, wie viele Pferde es auf dem Hof gibt und die sich mit jedem Kauf selbstständig aktualisiert.
Nun habe ich folgenden Code (Auszug):
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
|
<table width="40%">
<tbody>
<tr>
<th colspan="2" rowspan="1">
<p align="left">Privatponys</p>
</th>
<th>
<p align="left"><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?></p>
</th>
</tr>
<tr>
<td colspan="2">davon Stuten</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Stute'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td colspan="2">davon Wallache</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Wallach'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td colspan="2">davon Hengste</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Hengst'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
|
|
Allerdings wird die Seite nicht so ausgegeben, wie ich es gerne hätte, denn die jeweiligen Zahlen sind in der Tabelle tiefgestellt. (Bild im Anhang)
Woran liegt das?
Maina
Probiers mal ohne colspan, den brauchst du da doch gar nicht...?
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
|
<table width="40%">
<tbody>
<tr>
<th>
<p align="left">Privatponys</p>
</th>
<th>
<p align="left"><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?></p>
</th>
</tr>
<tr>
<td>davon Stuten</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Stute'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td>davon Wallache</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Wallach'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td>davon Hengste</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Hengst'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
|
|
Kullakeeeks
Hmmm...colspan rausnehmen ändert leider nichts...
trotzdem danke für die Idee...
Maina
Magst du mir vielleicht mal den Link zu der Textseite (auch per PN, wenn du magst) geben? Ich denk nämlich, dass das kein PHP-Problem ist (;
(Übrigens, die db.php musst du nur einmal includen.)
Kullakeeeks
Hat noch jemand ne Idee??
Oli
Zitat: |
Original von Kullakeeeks
Hat noch jemand ne Idee?? |
Wenn du uns den kompletten Code der Seite postest, können wir weitersuchen, der gepostete Codeausschnitt dürfte das beschriebene Verhalten jedoch nicht verursachen.
LG
Kullakeeeks
Hier der gesamte Code...
Ist allerdings noch nicht alles von HTML in PHP umgeändert...
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<title>Ponyhof Ayumi</title>
</head>
<body>
<h1>STATISTIK</h1>
<br>
<center>
<table width="70%">
<tbody>
<tr>
<th>
<p align="left">Privatponys</p>
</th>
<th>
<?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?></th>
</tr>
<tr>
<td>davon Stuten</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Stute'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td>davon Wallache</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Wallach'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<td>davon Hengste</td>
<td><?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah' && geschlecht='Hengst'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
</td>
</tr>
<tr>
<th>
<p align="left">Schulponys</p>
</th>
<th>
<p align="left">12</p>
</th>
</tr>
<tr>
<td>davon Stuten</td>
<td>5</td>
</tr>
<tr>
<td>davon Wallache</td>
<td>7</td>
</tr>
<tr>
<td>davon Hengste</td>
<td>0</td>
</tr>
<tr>
<th>
<p align="left">Zuchthengste</p>
</th>
<th>
<p align="left">8</p>
</th>
</tr>
<tr>
<td>Connemara</td>
<td>1</td>
</tr>
<tr>
<td>DRP</td>
<td>3</td>
</tr>
<tr>
<td>Haflinger</td>
<td>1</td>
</tr>
<tr>
<td>Norweger</td>
<td>1</td>
</tr>
</tbody>
</table>
</center>
</body>
</html>
|
|
Oli
Hi,
ich fürchte, die style.css musst du auch noch posten. Bisher sehe ich keinen Grund, warum die Zahlen dargestellt werden sollten. Ansonsten wäre es eventuell gut zu wissen, in welchem Browser das so dargestellt wird.
LG
Kullakeeeks
So, das ist die CSS-Datei:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
|
BODY
{color: #BCB4A5;
font-size: 10pt;
font-family: Verdana;
background-attachment: fixed;
scrollbar-face-color: #ffffff;
scrollbar-highlight-color: #000000;
scrollbar-3dlight-color: #ffffff;
scrollbar-darkshadow-color: #ffffff;
scrollbar-shadow-color: #ffffff;
scrollbar-arrow-color: #000000;
scrollbar-track-color: #ffffff;
}
h1 {
font-size: 10pt;
font-family: Verdana;
border-bottom: 1px solid #BCB4A5;
}
a:hover {color:#000000;
text-decoration:none;
position: relative;
top: 2;
left: 2;
border-bottom:1 dotted;
border-color:#BCB4A5;}
a:link, a:active, a:visited {
color: #BCB4A5;
text-decoration: none;
}
img { border: 0; }
table {
bordercolor: #BCB4A5;
border-collapse: collapse;
font-family: verdana;
font-size: 10pt;
color: #BCB4A5;
border: 1px solid;
}
th {
border: 1px solid;
color:#BCB4A5;
font-weight: bold;
}
tr {
color:#BCB4A5;
}
td {
color:#BCB4A5;
}
style {filter:Chroma(color=#ffffff)}
|
|
/edit: Achso, es geht weder im IE, noch im FF...andere Broowser hab ich nicht zum Testen...
Kullakeeeks
Weiß noch jemand was?
Ceres
Versuchs mal mit Vetical-align im CSS Code, weil ja die Ausgabe eindeutig an der unteren Border ausgerichtet ist.
code: |
1:
2:
3:
4:
5:
6:
|
td {
color:#BCB4A5;
vertical-align: middle;
}
|
|
Kullakeeeks
das ändert leider auch nichts...
Trotzdem danke...
Ceres
Dann würde ichs mal mit der html variante versuchen.
Dazu mach mal aus dem Quellcode überall, wo im td PHP code ist folgendes
code: |
1:
2:
3:
4:
|
<td valign="middle"><? ....?></td>
|
|
Kullakeeeks
Hilft auch nicht...
Ceres
Also irgendwie finde ich auch nichts, wo du mit cellspacing/cellpadding die Position des Textes bestimmts. Der Fehler liegt ja in der Darstellung, das heißt entweder fehlt was oder es ist irgendwas zu viel.
Versuchs mal mit <table cellpadding="2">
ansonsten musst dus noch über padding im css versuchen.
Kullakeeeks
funktioniert auch beides nicht...
Ich hab den ganzen Code auch selbst nochmal überarbeitet, doch ich finde auch nichts...
/edit: Also ich hab grad festgestellt, dass es sich immer verschiebt, sobald ich irgendeinen PHP-Code angebe, also nicht nur, wenn ich die Anzahl ausgeben will, sondern auch bei allem anderen...
Ceres
Tja dann würde ich als nächstes mal versuchen, die komplette Seite mit PHP-Echo auszugeben. Ich wüsste zwar nicht ob das sein kann, aber möglich wäre auch, dass durch jede neue Abfrage irgendwie ein Umbruch erfolgt, wieso auch immer. Um das zu umgehen würde ich einfach mal testen alles in ein Echo zu verpacken und dann entsprechend nur die Variablen anzuhängen der bestimmten Position, so dass die Abfrage nicht jedes Mal neu erfolgen muss.
würde es zumindest mal versuchen
Oli
Ceres bringt mich da auf eine Idee..
Steht in der Datenbank.php oben vor dem <?php oder unten nach dem ?> möglicherweise ein Zeilenumbruch? Der würde dann nämlich ausgegeben werden.
LG
Kullakeeeks
Wuhuuuu...da lag der Fehler, jetzt funktionierts...
Vielen Dank Oli und auch Ceres natürlcih für deine Mühe...
Kullakeeeks
Jetzt hab ich noch ne kleine Frage:
Wenn ich in der Statistik die Anzahl der Privatpferde angeben will, muss ich ja quasi alle ausgeben lassen, wo der Besitzer nicht der Händler ist. Aber wie gebe ich das aus? Normalerweise nehme ich ja einfach
php: |
1:
2:
3:
|
<?php include("db.php"); $abfrage = "SELECT COUNT(*) AS anzahl FROM pferde WHERE besitzer='Hannah'"; $ergebnis = mysql_query($abfrage); $row = mysql_fetch_array($ergebnis); echo $row['anzahl']; ?>
|
|
Aber wie gebe ich jetzt bei Besitzer "alle außer Pferdehändler" an??