Hey udviklere!
Jeg har denne kode:
<html><head><title>Under udvikling</title><link rel="stylesheet" type="text/css" href="../style/style.css"></head><body><center><? $db = mysql_connect("localhost", "*****", "*****");
mysql_select_db("*****", $db);
$foresp = mysql_query("SELECT grafik, kodning FROM under_udvikling"); $data = mysql_fetch_row($foresp); $grafik_rest = 100 - $data[0]; $kodning_rest = 100 - $data[1]; echo "<b>Beautiful Digital</b> er under udvikling. Under dette skema kan du se hvor langt jeg er nået:<br><br><table><tr><td class=\\"diagram_navn\\">Grafik:</td><td class=\\"diagram_indhold\\"><img src=\\"1pixel_sort.bmp\\" width=$data[0] height=18><img src=\\"1pixel_grae.bmp\\" width=$grafik_rest height=18></td><td class=\\"diagram_indhold\\">$data[0]%
</td></tr><tr><td class=\\"diagram_navn\\">Kodning:</td><td class=\\"diagram_indhold\\">
<img src=\\"1pixel_sort.bmp\\" width=$data[1] height=18><img src=\\"1pixel_grae.bmp\\" width=$kodning_rest height=18></td><td class=\\"diagram_indhold\\">$data[1]%</td></tr></table>"; ?><br>
<? [b]if(!$vis == $ja)[/b] { $foresp = mysql_query("SELECT id_nyhed, navn_nyhed, hjemmeside_nyhed, email_nyhed, sekunder_nyhed, besked_nyhed FROM nyheds_kommentarer ORDER BY id_nyhed DESC");
$antal_kommentarer = mysql_num_rows($foresp);
echo "<a href=" . $PHP_SELF . "?vis=ja>Der er <b>$antal_kommentarer</b> kommentar(er)</a>";
} else { echo "<table><tr><td class=\\"kommentar_top\\">Kommentarer:</td></tr>";
[b]while($data = mysql_fetch_row($foresp))[/b]{ echo "<tr><td class=\\"kommentar_top\\" align=center>Nummer: $data[0] -" . date("G:i - j.n.y", $data[4]) . "</td></tr><td class=\\"kommentar_indhold\\">Navn:</td><td class=\\"kommentar_indhold\\">$data[1]</td><td class=\\"kommentar_indhold\\" rowspan=\\"3\\">$data[5]</td><tr><td class=\\"kommentar_indhold\\">Hjemmeside:</td><td class=\\"kommentar_indhold\\">";
if($data[2]) { echo "<a href=\\"$data[2]\\">$data[2]</a>"; } else { echo "Ingen"; } echo "</td></tr><tr><td class=\\"kommentar_indhold\\">E-mail</td><td class=\\"kommentar_indhold\\">"; if($data[2]) { echo "<a href=\\"$data[2]\\">$data[2]</a>"; } else { echo "Ingen"; } echo "</td></tr><tr><td height=\\"10\\"></td></tr>"; }
}
?><br><br><table><tr><td class="kommentar_top">Læg en kommentar</td></tr><tr><td class="kommentar_indhold"><form method=post action=<? echo $PHP_SELF; ?>?vis=ja><input type=hidden name=skriv_kommentar value=1><table><tr><td class="kommentar_indhold">Navn:</td><td class="kommentar_indhold"><input type=text name=navn></td></tr><tr><td class="kommentar_indhold">Hjemmeside - med http://!</td><td class="kommentar_indhold"><input type=text name=hjemmeside></td></tr><tr><td class="kommentar_indhold">Email</td><td class="kommentar_indhold"><input type=text name=email></td></tr><tr><td class="kommentar_indhold">Besked:</td><td class="kommentar_indhold"><textarea name=besked cols=20 rows=5></textarea></td></tr><tr><td class="kommentar_indhold"><input type=submit class="button" value="Kommentér"></form></td></tr></table>
<? if($skriv_kommentar) { $besked = str_replace("\\n", "<br>", $besked);
$sekunder = time();
mysql_query("INSERT INTO nyheds_kommentarer(navn_nyhed, hjemmeside_nyhed, email_nyhed, sekunder_nyhed, besked_nyhed) VALUES ('$navn', '$hjemmeside', '$email', '$sekunder', '$besked')"); echo "Din kommentar er nu tilføjet."; } ?>
</body></html>
Denne kode virker på denne måde:
1. den første del er koden er noget med diagrammer o.s.v, men det er ikke det jeg har problemer med.
2. Den næste del er en nyhed som man kan kommentere - for at man kan se kommentarene skal variablen $vis = ja (markeret med
fed). Denne variable bliver sat til "ja" oppe i addressen ved hjælp af ?vis=ja... men hvis jeg skriver ?vis=nej eller ?vis=kaefscks så reagere den stadig som om jeg har skrevet ?vis=ja ...?! Hvorfor d?
3. Så skal php også hente data fra en database, det kører fint, men min kode
while($data = mysql_fetch_row($foresp)) virker ikke?! Den skriver ingen fejlmeddelser, den viser bare ikke kommentarerne. Jeg er sikker på at der er data i tablen og at jeg har skrevet de rigtige navne, for $antal_kommentarer = mysql_num_rows($foresp) længere oppe i koden virker fint...
men jeg har problemer med min if og while sætninger - de virker, men de virker ikke som de skal... hvad er fejlene - der er 50 UP til den/dem der hjælper mig til at løse problemet.
EvoLution ...We can always be smarter...