Forum - Selbstgecodet | Zeigt nichts an |
Startpost-Retter
Mitglied
 
Dabei seit: 24.01.2011
Beiträge: 12.246
Herkunft: Gegen Bilderklau, intern
 |
|
|
01.04.2007 11:51 |
|
|
_-PinkPunker-_

alone in kyoto
 

Dabei seit: 20.05.2006
Beiträge: 739
Herkunft: österrike
 |
|
ich kenn mich ja fast gar nicht mit PHP aus, aber ich hab auch mal so einen Fehler gehabt, dass ich etwas eingetragen habe und es wurde zweimal angezeigt, einmal richtig einmal falsch. Vroni hat mir da empfohlen
php: |
1:
|
if ($ergebnis == true) { |
|
vor die Ausgabe der Erfolgsmeldung (vlt in deinem Fall: Das Thema/Der Beitrag wurde erfolgreich erstellt/gepostet.) zu setzen.
Wie gesagt, ich kenn mich fast gar nicht mit PHP aus, aber vlt probierst du das mal.
__________________
|
|
01.04.2007 12:12 |
|
|
VRH Pferde
Mitglied
 

Dabei seit: 18.02.2006
Beiträge: 2.402
 |
|
php: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
|
while (($reihe = mysql_fetch_assoc($result1)) AND ($member = mysql_fetch_assoc($result2))) {
echo "<table border="1" width="90%" id="rs">
<tr>
<td width="74%" height="304">
<p align="center">$reihe[entry]<br>
<hr><br>
$member[signatur]</p></td>
<td width="26%" height="304">
<p align="center"><b>$member[name]<br>
</b>member[title]<br>
<img src="$member[avatar]"></td>
</tr>
<tr>
<td width="100%" colspan="2" height="19">
<p align="center">Geschrieben am $row[date] | BeitragsID $row[id]</td>
</tr>
</table><br>";
} |
|
Vielleicht solltest du zwei Whileschleifen machen, sodass erstmal die Whileschleife für die Posts und dann in der Post-Schleife die Schleife für das Mitglied...
LG Neele
|
|
05.04.2007 13:27 |
|
|
Gonzo
Mitglied
 
Dabei seit: 26.12.2006
Beiträge: 64
 |
|
Hi,
kenne mich mit PHP auch nicht aus (nur mit Perl), weiß aber, daß es hilft, wenn man einem Laien erklärt, was der Code machen soll. Meist findet man den Fehler dann schnell.
(Einen debugger gibt's nicht?)
Also: Erklär mir mal mit eigenen Worten, was der obige Code machen soll, am besten Zeile für Zeile.
(Wenn Du magst.)
|
|
05.04.2007 13:53 |
|
|
Gonzo
Mitglied
 
Dabei seit: 26.12.2006
Beiträge: 64
 |
|
Hi,
so, dann wollen wir mal sehen. Ist zwar nicht ganz so detalliert, daß ein Laie das auf Anhieb versteht, aber so mit 20Jahren DB-Erfahrung könnte es evtl. hinhauen.
Zunächst fällt auf, daß die While-Schleife in 15-17 offenbar zweimal durchlaufen wird. Dies weist darauf hin, daß die SELECT-Anweisung zweimal fündig geworden ist. Er findet also zwei Datensätze in der Tabelle "x_boards" und durchläuft die WHILE-Loop zweimal. Warum könnte das so sein?
(Hilfreich wäre auch eine Strukturbeschreibung von "x_boards".)
Ferner fällt mir auf, daß Du den Wert von $result nicht abfragst. Was, wenn dort schon ein Fehler auftrat?
Wenn ich das richtig sehe, könntest Du zuvor über die Funktion:
mysql_num_rows($result)
herausbekommen, wieviele Sätze (Tabellenzeilen) der SELECT gefunden hat. Wäre auch eine Hilfe.
Ferner frage ich mich, ob die Syntax
$row[title]
richtig ist (müssen da nicht evtl. Anführungsstriche vor und hinter "title"?).
Also so:
$row["title"]
???
Soweit erstmal dazu. Jetzt muß ich weg, schau später noch mal herein.
(Wär doch gelacht, oder?)
|
|
05.04.2007 17:55 |
|
|
Gonzo
Mitglied
 
Dabei seit: 26.12.2006
Beiträge: 64
 |
|
Hi,
also mal ganz auf die Schnelle zwischendurch:
XOR wäre logisch falsch, denn es gilt:
1 XOR 0 ergibt TRUE
1 XOR 1 ergibt aber FALSE
==> Wenn also beide Bedingungen zutreffen, würde die Schleife niemals durchlaufen.
Dennoch: Laß uns systematisch vorgehen:
Was kommt heraus, wenn Du
mysql_num_rows($result)
ausgeben läßt?
Mach das erstmal, dann sehen wir weiter. Bis später!
|
|
05.04.2007 20:04 |
|
|
Gonzo
Mitglied
 
Dabei seit: 26.12.2006
Beiträge: 64
 |
|
Glückwunsch!
|
|
06.04.2007 11:32 |
|
|
|
Impressum
|