_Nitro_ Skrevet 30. april 2004 Del Skrevet 30. april 2004 Hei, jeg har fått laget selve siden slik at den henter ut informasjon fra sql og legger den ut på websiden. Men så kommer problemet mitt. Jeg skulle hadd denne informasjonen inn i en tabell med max 3 kolonner. Når informasjonen blir hentet ut så skriver den informasjonen inn i alle de 3 kolonnene, så håpper den ned på en ny rad og skriver ut 3 nye kolonner. Skjønner? Jeg har prøvd meg: <html> <?php include('mysql-config.php'); ?> <head> <meta http-equiv="Content-Language" content="no-bok"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>New Page 0</title> </head> <body> <p align="center"><font face="Arial Black">Artikler</font></p> <center><form action="<?php print($_SERVER["PHP_SELF"]); ?>" method="post"> <select name="kategori"> <option>---Velg Kategori---</option> <option>Katt</option> <option>Hund</option> <option>Gnagere</option> </select> <input type="submit" name="vis" value="Vis"> </form> </center> <table border="2" width="100%" id="table1"> <tr align=center> <?php $kategori = $_POST['kategori']; echo "<center>$kategori</center>"; if (isset($_POST['vis'])) { $result = @mysql_query("SELECT * FROM docs WHERE kategori = '$kategori'"); if (!$result) { die('<p>Får ikke kontakt med ' . ' tabellen på dette tidspunktet: ' . mysql_error() . '</p>'); } // Vis tekt i som ligger i databasen while ( $row = mysql_fetch_array($result) ) { echo('<td><a href="' . $row['fil'] . '">' . $row['artikkelnavn'] . '</td></a> '); } } ?> </tr> </table> </body> </html> Men har lager den ikke en ny rad etter å skrive ut 3 kolonner, den lager bare flere. Noen tips? Lenke til kommentar
rogbiff Skrevet 30. april 2004 Del Skrevet 30. april 2004 Du må endre litt inne i while-statementen din : Så jeg laget en liten edit til deg : $count = 0; while ( $row = mysql_fetch_array($result) ) { echo('<td><a href="' . $row['fil'] . '">' . $row['artikkelnavn'] . '</td></a>'); if($count == 3) { echo "</tr><tr>"; $count = 0; continue; } $count++; $row = mysql_fetch_array($result) } Her teller den antall ganger, loopen gjentas, og printer </tr><tr> når tre kolonner er printet. Har ikke testet den (sitter på skolen), men si i fra om den ikke virker Lenke til kommentar
_Nitro_ Skrevet 4. mai 2004 Forfatter Del Skrevet 4. mai 2004 (endret) Feil: Parse error: parse error in /usr/local/apache/htdocs/jkjk/hamarvet/artikler.php on line 48 Kode: <html> <?php include('mysql-config.php'); ?> <head> <meta http-equiv="Content-Language" content="no-bok"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>New Page 0</title> </head> <body> <p align="center"><font face="Arial Black">Artikler</font></p> <center><form action="<?php print($_SERVER["PHP_SELF"]); ?>" method="post"> <select name="kategori"> <option>---Velg Kategori---</option> <option>Katt</option> <option>Hund</option> <option>Gnagere</option> </select> <input type="submit" name="vis" value="Vis"> </form> </center> <table border="2" width="100%" id="table1"> <tr align=center> <?php $kategori = $_POST['kategori']; echo "<center>$kategori</center>"; if (isset($_POST['vis'])) { $result = @mysql_query("SELECT * FROM docs WHERE kategori = '$kategori'"); if (!$result) { die('<p>Får ikke kontakt med ' . ' tabellen på dette tidspunktet: ' . mysql_error() . '</p>'); } // Vis tekt i som ligger i databasen $count = 0; while ( $row = mysql_fetch_array($result) ) { echo('<td><a href="' . $row['fil'] . '">' . $row['artikkelnavn'] . '</td></a>'); if($count == 3) { echo "</tr><tr>"; $count = 0; continue; } $count++; $row = mysql_fetch_array($result) } } ?> </tr> </table> </body> </html> Har nå funnet ut at det er $row = mysql_fetch_array($result) som gjør at jeg får parse error. Men hvorfor? Denne linjen ser jo ut som at den er Ok. Når jeg fjerner denne linjen så fungerer siden som den gjor før jeg la til endringene i while statementen. Hva kan være feil. Noen som ser problemet? Endret 4. mai 2004 av _Nitro_ Lenke til kommentar
LoS Skrevet 4. mai 2004 Del Skrevet 4. mai 2004 Prøv å legg til en ; på slutten av den kanskje? Lenke til kommentar
sven-o Skrevet 4. mai 2004 Del Skrevet 4. mai 2004 Riktig som LOS sier. Eneste jeg lurer på er hvorfor du har en ekstra fetch_array i while-loopen din? Har tatt meg friheten til å korte litt ned på linjene: while ( $row = mysql_fetch_array($result) ) { echo('<td><a href="' . $row['fil'] . '">' . $row['artikkelnavn'] . '</a></td>'.((++$count%3)?'':'</tr><tr>')); } Lenke til kommentar
_Nitro_ Skrevet 5. mai 2004 Forfatter Del Skrevet 5. mai 2004 Ehy... det fungerer sven-o! Takker så mycket! Mulig jeg kommer med noen flere spm. hvis jeg blir stående fast... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå