[ pepsiredstar @ 23.01.2012. 15:29 ] @
Zdravo svima.

Imam 2 niza (recimo A i B), gde su mi u prvom smešteni neki brojevi i u drugom takođe neki brojevi. Ja želim da napravim html tabelu gde će da mi se za jedan broj koji je u jednom redu, u kolonama budu vrednosti iz drugog niza, a ispod njih štampa A[] / B[]. Znači, nešto slično tablici množenja. Niz A ima 109 članova, a niz B 48. To bi trebalo da izgleda kao u prilogu. Može li mi neko pomoći?


[Ovu poruku je menjao pepsiredstar dana 23.01.2012. u 17:03 GMT+1]
[ ivan.a @ 23.01.2012. 16:37 ] @
"Školski" primer:

Code:
<?php
$NizA = array("1","2","3");
$NizB = array("1","2","3","4","5");

?>
<table style="border: 1px solid #ccc;" border=1>
<?php

foreach ($NizA as $vrednost1) {
?><tr><?php
    foreach ($NizB as $vrednost2) {
    ?>
    <td width="100" align="center">A[<?php echo $vrednost1; ?>] / B[<?php echo $vrednost2; ?>]</td>
    <?php
    }
?></tr><?php
    
}
?>
</table>

Naravno, ispravi kod za svoje potrebe.
[ pepsiredstar @ 23.01.2012. 16:53 ] @
Mislim da niste shvatili šta sam hteo da kažem, ili ja to nisam objasnio. Radi se o tome da u ćelijama treba da podelim brojeve, tj. da smestim njihov količnik, a da sa leve strane u koloni budu vrednosti iz prvog niza, a da u redu iznad budu vrednosti iz drugog niza.
[ ivan.a @ 23.01.2012. 17:04 ] @
Razumeo sam to, ali sam namerno stavio da se ovako prikazuje (zbog pregleda).
Dakle samo podeli ($vrednost1/$vrednost2) u okviru php sintakse.
Što se tiče prikaza vrednosti A (levo) i vrednosti B (gore) to se isto lako rešava uz pomoć tabele. Ako nisi siguran kako da to uradiš napisaću primer malo kasnije pošto sada žurim.
[ pepsiredstar @ 23.01.2012. 17:11 ] @
OK, hvala. Pošalji mi i ovo za A (levo) i B (gore) kada budeš mogao.
[ ivan.a @ 23.01.2012. 20:50 ] @
Na primer ovako (nije baš idealno rešenje, jer sam brzo radio, ali daje rezultate):

Code:
<?php
$NizA = array("1","2","3");
$NizB = array("1","2","3","4","5");

?>
<table border="1">
<?php

foreach ($NizA as $vrednost1) {
  if (!isset($TabelaB) ) { //Prikaz "B" (gore)
  $TabelaB = true;
  ?><tr><?php
   for ($i=0; $i<count($NizB); $i++) {
   if ($i==0) { ?><td></td><?php } //Prvo polje ostavljamo prazno (prostor za "A")
   ?>
   <td>B<?php echo $NizB[$i]; ?></td>
   <?php
   }
?></tr><?php
}
?><tr><?php
    $c=0;
    foreach ($NizB as $vrednost2) { //Prikaz rezultata po horizontali
    if ($c==0) { ?><td width="80">A<?php echo $vrednost1; ?></td><?php $c++; } //Prikaz "A" (levo)
    ?>
    <td width="80" align="left"><?php echo ($vrednost1/$vrednost2); ?></td>
    <?php
    }
?></tr><?php
    
}
?>
</table>

[ pepsiredstar @ 23.01.2012. 21:11 ] @
OK. Probaću, pa javljam kako je prošlo.

[Ovu poruku je menjao pepsiredstar dana 23.01.2012. u 22:21 GMT+1]

[Ovu poruku je menjao pepsiredstar dana 23.01.2012. u 22:21 GMT+1]
[ pepsiredstar @ 23.01.2012. 21:31 ] @
Radi. A kako bi moglo da se izvede da se umesto kolone A(levo), postavi tako da se štampaju vrednosti iz trećeg niza recimo C, tako da sve ostalo ostane isto? Mislim na to da se obavlja deljenje A/B u ćelijama tabele, da iznad ostane B, a samo sa leve strane da bude C, s' tim da su nizovi C i A isti? Kao u prilogu...
[ pepsiredstar @ 24.01.2012. 14:23 ] @
Rešio sam ovaj problem. Modifikovao sam kod onako kako mi je trebalo. Hvala na pomoći.
Code:

<?php
$NizC = array("A","B","C","D","E");
$NizA = array("1","2","3","4","5");
$NizB= array("1","2","3");

?>
<table border="1">
<?php

foreach ($NizA as $vrednost1) {
  if (!isset($TabelaB) ) { //Prikaz "B" (gore)
  $TabelaB = true;
  ?><tr><?php
   for ($i=0; $i<count($NizB); $i++) {
   if ($i==0) { ?><td></td><?php } //Prvo polje ostavljamo prazno (prostor za "A")
   ?>
   <td><?php echo $NizB[$i]; ?></td>
   <?php
   }
?></tr><?php
}
?><tr><?php
    $c=0;
    foreach ($NizB as $vrednost2) {  //Prikaz rezultata po horizontali 
    if ($c==0) { ?><td width="80"><?php echo $NizC[array_search($vrednost1, $NizA)]; ?></td><?php $c++; } //Prikaz "A" (levo)
    ?>
    <td width="80" align="left"><?php echo ($vrednost2/$vrednost1); ?></td>
    <?php
    
    }
?></tr><?php  
}
?>
</table>