"mysql_query("SELECT * FROM" vormgeven met css ipv table

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ben lubben

ben lubben

24/10/2012 10:05:46
Quote Anchor link
hallo mensen,

ik heb geen flauw idee hoe ik het moet aanpakken,

ik wil gewoon een tasklist hebben.
dus onder elkaar de tasks met daarbij de behorende gegevens.
elke task bestaat uit 3 regels met daarin hun informatie.
de code die ik nu heb is ;
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
result = mysql_query("SELECT * FROM tasks WHERE done = 0");



while($row = mysql_fetch_array($result))
  {
  echo "<table align='center' width='800px' border='1'>";
  echo "<tr>";
  echo "<td>" . $row['id'] . "</td>";
  echo "<td>" . $row['title'] . "</td>";
  echo "<td>" . $row['enddate'] . "</td></tr>";
  echo "<tr><td>" . $row['info'] . "</td></tr>";
  echo "<tr><td>" . $row['startdate'] . "</td></tr>";
  echo "<tr><td></td></tr>";
  echo "</table>";
 }
mysql_close($con);


alleen dit ziet er natuurlijk niet uit.
is het mogelijk om ipv tables gewoon dit alles in css doen?
en zo ja kan iemand dat een stukje code van hierboven ff zo maken als voorbeeld.

alvast super bedankt.
Gewijzigd op 24/10/2012 10:59:19 door Ben lubben
 
PHP hulp

PHP hulp

05/01/2025 09:52:20
 
- Ariën  -
Beheerder

- Ariën -

24/10/2012 10:13:05
Quote Anchor link
Kan je jouw code even tussen [code]-tags zetten?

Verder zou dit prima in tabellen kunnen, gezien het een overzicht is, en het niet gebruikt wordt als positiebepaling voor het design. Je kan met CSS de stijl van de tabel prima stylen zodat je de width, en de border-attributen uit je table-tag kan vergeten.

Ook raad ik aan om goede foutafhandeling in te bouwen. Controleer dus of $result (vergeet de $ niet) false is of een geldige resource teruggeeft. Indien het laatste dan, is alles goed, en kan je je whileloop-tonen, en zo niet, dan kan je mysql_error() tonen. Ik raad aan om deze niet publiekelijk te tonen, maar alleen voor jouw zelf. Puur vanuit veiligheidsredenen.

Lees ook eens dit artikel:
http://www.phphulp.nl/php/tutorial/data-verwerking/foutafhandeling-query-sql/735/
Gewijzigd op 24/10/2012 10:13:53 door - Ariën -
 
Q S

Q S

24/10/2012 10:16:55
Quote Anchor link
Ik zou ook zorgen dat het 1 tabel is i.p.v. allemaal losse, dan zijn je kolommen allemaal gelijk

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
echo '<table align="center" width="800px" border="1">';
while($row = mysql_fetch_array($result))
{
echo '<tr>';
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['title'] . '</td>';
echo '<td>' . $row['startdate'] . '</td>';
echo '<td>' . $row['enddate'] . '</td></tr>';
echo '<tr><td colspan="4">' . $row['info'] . '</td></tr>';
echo '<tr><td colspan="4"></td></tr>';
}
echo '</table>';
Gewijzigd op 24/10/2012 10:17:19 door Q S
 
Ben lubben

ben lubben

24/10/2012 11:18:25
Quote Anchor link
oke, maar nu vind ik het alsnog niet uitzien.
Afbeelding
moet ik gewoon met css nu die table formgeving aanpassen?

edit:

wat ik eigenlijk wil is het volgende ongeveer,
Afbeelding

is dit mogelijk?
Gewijzigd op 24/10/2012 11:28:58 door ben lubben
 
Sem E

Sem E

24/10/2012 12:05:13
Quote Anchor link
alles is mogelijk ;)
 
Ben lubben

ben lubben

24/10/2012 12:14:36
Quote Anchor link
Sem E op 24/10/2012 12:05:13:
alles is mogelijk ;)


vast wel, maar is dit simpel te maken of is dit wel op een redelijk moeilijk niveau.
ik kan die boxen wel in css maken, dat is de kunst niet.
alleen ik ben gewoon geen fan van tables en ik heb daarom ook totaal geen ervaring met tables en css.

Toevoeging op 24/10/2012 19:50:55:

ik heb vanmiddag nog wat lopen prutsen en testen maar ik kom er echt niet uit.
dit is de php code waar het volgens mij om gaat.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
echo '<table>';
while($row = mysql_fetch_array($result))
{
echo '<div id="topbox"><tr>';
echo '<td>' . $row['id'] . '</td>';
echo '<td>' . $row['title'] . '</td>';
echo '<td>' . $row['enddate'] . '</td></tr></div>';
echo '<div id="middlebox"><tr><td colspan="3">' . $row['info'] . '</td></tr></div>';
echo '<div id="bottombox"><tr><td colspan="3">' . $row['startdate'] . '</td></tr></div>';
}
echo '</table>';

en als ik de bron bekijk komt er het volgende uit.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<table><div id="topbox"><tr><td>2</td><td>test2</td><td>2012-10-27</td></tr></div><div id="middlebox"><tr><td colspan="3">hier kan nog meer info komen</td></tr></div><div id="bottombox"><tr><td colspan="3">2012-10-17 22:14:14</td></tr></div><div id="topbox"><tr><td>3</td><td>test1</td><td>2012-10-24</td></tr></div><div id="middlebox"><tr><td colspan="3">hier kan allemaal info komen</td></tr></div><div id="bottombox"><tr><td colspan="3">2012-10-17 22:13:28</td></tr></div><div id="topbox"><tr><td>4</td><td>test4</td><td>2012-10-27</td></tr></div><div id="middlebox"><tr><td colspan="3">hier kan nog meer info komen heel veel</td></tr></div><div id="bottombox"><tr><td colspan="3">2012-10-17 22:14:14</td></tr></div></table>

het probleem is nu dat hij het alsnog niet goed weergeeft, getest in chrome en IE9
Afbeelding

weet iemand waardoor dit komt en mischien de oplossing?

Toevoeging op 25/10/2012 11:13:32:

mensen, ik ben eruit gekomen zo ongeveer.

ik heb het hele table idee weg gegooit en alleen met divjes gedaan.
ik dacht dat dit neit mogelijk was maar dus wel blijkbaar,
dit heb ik nu
Afbeelding
ik zal het nog mooi moeten maken maar het begin heb ik al.

heel erg bedankt mensen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.