[PHP] Kolommen naast elkaar presenteren

Pagina: 1
Acties:
  • 364 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben al een hele tijd bezig om tabellen naast elkaar te presenteren
in plaats van onder elkaar, maar ik kom er niet achter hoe ik dat doe!

Zo doe ik het nu:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
$SQL = "SELECT * FROM tabel";
// Dit deel zorgt voor de weegave van de berichten.
$result = mysql_query($SQL);
while($bericht = mysql_fetch_array($result)) {
<?
  <tr> 
    <td><?php echo $bericht['tekst_1']; ?></td>
    <td><?php echo $bericht['tekst_2']; ?></td>
    <td><?php echo $bericht['tekst_3']; ?></td>
    <td><?php echo $bericht['tekst_4']; ?></td>
    <td><?php echo $bericht['tekst_5']; ?></td>
  </tr>
?>

Maar hetgeen wat hierboven staat moet naast elkaar gepresenteerd worden. :?

modbreak: [PHP] en [/PHP] om je code bevordert de leesbaarheid. Verder is dit erg basic, en met www.php.net ben je hier ook zo uit. Ik laat deze dan ook alleen open omdat het je eerste topic is en er al goede respons is :)

[ Voor 35% gewijzigd door curry684 op 14-06-2003 23:07 ]


Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 12:54

Bosmonster

*zucht*

Zet eerst al je gegevens even ni een array en loop er vervolgens op een andere manier doorheen... lijkt me nou niet echt super-ingewikkeld ofzo :/

Acties:
  • 0 Henk 'm!

  • Banpei
  • Registratie: Juli 2001
  • Laatst online: 25-10-2022

Banpei

Hachiroku on this touge?

Tabel in tabel misschien een uitkomst? :?

AE86 gevonden! | So what I thought I'd do was, I'd pretend to be one of those deaf-mutes.


Acties:
  • 0 Henk 'm!

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

http://nl3.php.net/manual/en/function.array-flip.php

staat een leuk voorbeeldje bij de user comments
If you need traspose an array (i.e convert columns in rows) for a multidimensional array obtain from a SQL query, try this:

That is an array from arrays that represent each columns.
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
Array
(
  [col1] => Array
       (
           [0] => 10
          [1] => 100
           [2] => 200
           [3] => a
      )

   [col2] => Array
       (
           [0] => 1
           [1] => 3
           [2] => 2
           [3] => 5
       )
)

$arreglo_aux = Array();
foreach( $arreglo as $keymaster => $value )
   foreach( $value as $key => $elemento  )
       $arreglo_aux[$key][$keymaster] = $elemento;


the results will be

Array
(
   [0] => Array
       (
           [col1] => 10
           [col2] => 1
       )

   [1] => Array
       (
          [col1] => 100
           [col2] => 3
       )

   [2] => Array
       (
           [col1] => 200
          [col2] => 2
       )

   [3] => Array
       (
          [col1] => a
           [col2] => 5
      )
)

Acties:
  • 0 Henk 'm!

  • KompjoeFriek
  • Registratie: Maart 2001
  • Laatst online: 15-08 22:46

KompjoeFriek

Statsidioot

volgens mij mis je 2 tags:
code:
1
2
<table>
</table>
je code wordt dan zoiets:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<table>
<?
$SQL = "SELECT * FROM tabel";
// Dit deel zorgt voor de weegave van de berichten.
$result = mysql_query($SQL);
while($bericht = mysql_fetch_array($result)) {
?>
<tr> 
<td><?php echo $bericht['tekst_1']; ?></td>
<td><?php echo $bericht['tekst_2']; ?></td>
<td><?php echo $bericht['tekst_3']; ?></td>
<td><?php echo $bericht['tekst_4']; ?></td>
<td><?php echo $bericht['tekst_5']; ?></td>
</tr>
<? } ?>
</table>
Of denk ik nou te simpel?
edit:
Heey curry684, waarom maak je nou 2 appart vakken van zijn code? ik vind het nou niet meer goed leesbaar, ik had gewoon alles tussen de [code=php][/code] gezet...
ps. je vind modbreaks wel leuk de laatste tijd, of niet? :P

edit:
php geek, post eens wat voor uitvoer je krijgt.
als ik het goed begrijp wil je al je tabellen langs elkaar tonen?
Verder denk ik dat je goed naar de opmerkingen van Banpei en Erkens moet kijken.

[ Voor 98% gewijzigd door KompjoeFriek op 14-06-2003 16:50 . Reden: reactie op modbreak ]

WhatPulse! - Rosetta@Home - Docking@Home


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
<table></table>
Zit er natuurlijk wel boven en onder.

[ Voor 68% gewijzigd door Verwijderd op 14-06-2003 16:24 ]


Acties:
  • 0 Henk 'm!

  • KompjoeFriek
  • Registratie: Maart 2001
  • Laatst online: 15-08 22:46

KompjoeFriek

Statsidioot

Misschien is dit wat je zoekt?
deze laat alle tabellen met alle velden van een bepaalde database zien:
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
<?PHP
  $connection=mysql_connect("localhost","Dat zou je","Wel Willen Weten hè?");
  mysql_select_db("Database Naam",$connection);
?>
<table border="1"> 
  <tr>
<? 
    $result = mysql_list_tables("Database Naam");
    
    if (!$result) {
        echo "DB Error, could not list tables\n";
        echo 'MySQL Error: ' . mysql_error();
        exit;
    }
    
    while ($row = mysql_fetch_row($result))
    {
?>
    <td>
      <table border="1">
        <tr>
          <th>Tabel : <?= $row[0] ?></th>
        </tr>
<?
      $fields = mysql_list_fields("Database naam", $row[0], $connection);
      $columns = mysql_num_fields($fields);

      for ($i = 0; $i < $columns; $i++)
      {
?>
        <tr>
          <td><?= mysql_field_name($fields, $i) ?></td>
        </tr>
<?
      }
?>
      </table>
    </td>
<?
    } 
?> 
  <tr>
</table> 
Heb ik altijd al eens willen maken, nou ist het dan zover :P

WhatPulse! - Rosetta@Home - Docking@Home


Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

KompjoeFriek schreef op 14 juni 2003 @ 16:18:
Heey curry684, waarom maak je nou 2 appart vakken van zijn code? ik vind het nou niet meer goed leesbaar, ik had gewoon alles tussen de [php] en [/php] gezet...
* curry684 kent geen PHP, sorry :) Iig leesbaarder dan de eerste versie ;)
ps. je vind modbreaks wel leuk de laatste tijd, of niet? :P
We proberen het 'alles-op-slot' image van P&W wat bij te poetsen en meer te corrigeren door ingrijpen in de posts zelf en de kans te geven bij te werken. En tot nu ben ik zelf iig niet ontevreden over die aanpak. :Y)

[ Voor 3% gewijzigd door curry684 op 14-06-2003 17:34 ]

Professionele website nodig?


Acties:
  • 0 Henk 'm!

  • KompjoeFriek
  • Registratie: Maart 2001
  • Laatst online: 15-08 22:46

KompjoeFriek

Statsidioot

@curry:
Ik vind het zeker goed dat jullie van het 'alles-op-slot' imago afwillen, maar als je code edit, is het denk ik beter als je wat van de code afweet, zoals jij de code nu hebt neergezet is deze anders als eerst, en krijg deze dus ook een andere werken, maar goed, ik ben ook geen ster in php, maar alles is op te zoeken, dat bewijs ik wel met mijn vorige post :P

@php geek:
Waar ben je Arvid? We hebben al ff nix meer van je gehoord.
(om precies te zijn 94 minuten.)
edit:
Heb je al wat van de bovenstaande dingen geprobeerd?
Heeft ook al iets geholpen?
Zitten we in de goede richting te denken?
kort om, laat ff wat weten...

[ Voor 19% gewijzigd door KompjoeFriek op 14-06-2003 18:35 . Reden: zZzZzZzZzZ ]

WhatPulse! - Rosetta@Home - Docking@Home


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik geloof dat ik hier wel wat aan heb ja. B)
TNX Mate.

Acties:
  • 0 Henk 'm!

Verwijderd

Zo doe ik het altijd:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<? 
$count = 0;
$SQL = "SELECT * FROM tabel"; 
// Dit deel zorgt voor de weegave van de berichten. 
$result = mysql_query($SQL); 
while($bericht = mysql_fetch_array($result))
    { 
        $count++;
        if($count%10 == '1') // 10 is berichten per regel
            { 
                echo '</tr><tr>';
            }

   echo '<td> '.$bericht['tekst_1'].'</td>
         <td> '.$bericht['tekst_2'].'</td>
         <td> '.$bericht['tekst_3'].'</td>
         <td> '.$bericht['tekst_4'].'</td>
         <td> '.$bericht['tekst_5'].'</td>'; 
    }                                                                      
?> 

[ Voor 70% gewijzigd door Verwijderd op 15-06-2003 10:53 ]


Acties:
  • 0 Henk 'm!

  • Arnaud
  • Registratie: Mei 2000
  • Laatst online: 16-09 07:24
Zie Banpei, tabellen kunnen niet naast elkaar, tenzij ze zelf in een tabel staan. Kolommen staan per definitie naast elkaar.

Acties:
  • 0 Henk 'm!

Verwijderd

Tabellen naast elkaar

PHP:
1
2
3
4
5
6
7
8
<?php
$SQL = "SELECT * FROM tabel"; 
$result = mysql_query($SQL); 
while($bericht = mysql_fetch_array($result)) { 
?> 
  <tr> 
    <td><table><tr><td><?=$bericht['tekst_1']?></td></tr></table></td> 
    <td><table><tr><td><?=$bericht['tekst_2']?></td></tr></table></td> 


enzovoort.

Ik weet alleen niet of dit wat je bedoelt is.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik bedoel ook rijen als kolommen naast elkaar presenteren.
Dat heb ik inderdaad niet erg duidelijk neergezet. _/-\o_

Acties:
  • 0 Henk 'm!

  • Arnaud
  • Registratie: Mei 2000
  • Laatst online: 16-09 07:24
dodell: Dit is dus een tabel in een tabel.
php geek: presenteren = HTML <> PHP
Pagina: 1