• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wypełnianie pól w tabeli

Object Storage Arubacloud
0 głosów
416 wizyt
pytanie zadane 3 marca 2020 w PHP przez Młody programista Obywatel (1,200 p.)

Witam, czy mógłby ktoś pomóc mi wykonać poniższe tabelki. Pierwsze trzy mam zrobione, z pozostałymi nie umiem sobie poradzić ( te moje wyglądają tak jak na zdjęciu, ale nie wiem, czy kod jest poprawnie napisany, czy można go lepiej ).

<?php
$x = 10;
$y = 10;

echo '<table border="3"; style="border-collapse: collapse;">';

for($a = 0; $a < $x; $a++){
    echo '<tr>';
    for($b = 0; $b < $y; $b++){
        if ( $a == $b )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        if ( $a+$b == ($x-1) )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        echo '<td style="width: 12px; height: 12px;">';
        echo '</td>';
        
    }
    
    echo '</tr>';
}
echo "<br>";

echo '<table border="3"; style="border-collapse: collapse;">';

for($a = 0; $a < $x; $a++){
    echo '<tr>';
    for($b = 0; $b < $y; $b++){
        if ( $a == $b )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        if ( $a-$b == ($a) )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        if ( $a-$b == ($a+9) )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        if( $a+$a == ($a+9)) 
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        echo '<td style="width: 12px; height: 12px;">';
        echo '</td>';
        
    }
    
    echo '</tr>';
}
echo "<br>";

echo '<table border="3"; style="border-collapse: collapse;">';

for($a = 0; $a < $x; $a++){
    echo '<tr>';
    for($b = 0; $b < $y; $b++){
        if ( $a == $b )
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else
        if( $a<$b)
        echo '<td style="width: 12px; height: 12px;" bgcolor="red">';
        else    
        echo '<td style="width: 12px; height: 12px;">';
        echo '</td>';
        
    }
    
    echo '</tr>';
}
echo "<br>";

?>

 

1 odpowiedź

0 głosów
odpowiedź 3 marca 2020 przez Ehlert Ekspert (212,670 p.)

No to ja dam Ci taką małą podpowiedź. Rozwiąż te problemy na tablicach. Stwórz sobie tablicę 

<?php

$matrix = [
    [0, 0, 0],
    [0, 0, 0],
    [0, 0, 0],
];

Przekazuj taką tablicę do funkcji i zmieniaj zera na jedynki. Potem jak już otrzymasz pożądany wzór to na podstawie tablicy rysuj tabelkę. Jak będziesz robić wszystko na raz to pochlastać się można od tej mieszaniny php'a i html'a. Swoją drogą ręce mi opadają, co w tych szkołach wymyślają.

komentarz 3 marca 2020 przez Młody programista Obywatel (1,200 p.)
Nie rozumiem, wybacz, możesz jaśniej
komentarz 3 marca 2020 przez Ehlert Ekspert (212,670 p.)
Nie pisz tego w taki sposób jak próbujesz, bo to masakra. Wykorzystaj tablice. Deklarujesz taką tablicę jaką Ci napisałem (tylko 10x10), przekazujesz ją do funkcji która odpowiednie zera zamienia na jedynki. Potem wynik przekazujesz do funkcji która rysuje tabelkę na podstawie tablicy. W miejscach gdzie są jedynki koloruje tło.

Podobne pytania

0 głosów
2 odpowiedzi 15,710 wizyt
pytanie zadane 26 sierpnia 2015 w JavaScript przez karolk1235 Użytkownik (860 p.)
0 głosów
2 odpowiedzi 212 wizyt
pytanie zadane 15 listopada 2019 w C i C++ przez Mała Mi Początkujący (270 p.)
0 głosów
2 odpowiedzi 308 wizyt
pytanie zadane 24 października 2022 w PHP przez XDBX Użytkownik (640 p.)

92,555 zapytań

141,403 odpowiedzi

319,560 komentarzy

61,940 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...