Larv
17.01.2014, 23:27:20
Witam.
Nie mogę sobie poradzić z zamianą tekstu z tabeli w MYSQL na tabele na stronie.
Tabela w mysql wygląda mniej więcej tak:
id_grupy|GODZ| PN|WT|SR|CZ|PT ,a dane chciałbym podawać w formie:
dasdas;dasdas;;dasdsadsa;dasdas;das gdzie 2 sredniki pod rząd tworzą puste pole
chciałbym, aby każde pole z tabeli mysql zamienialo na kolumnę na stronie.
Czy jest taka możliwość?
Turson
17.01.2014, 23:33:48
W czym masz problem? W pętli tworzysz tabelę, wstawiasz do niej rekordy pobrane z bazy i tyle
Larv
17.01.2014, 23:48:05
Chodzi mi o zamianę tekstu z pola tabeli MySQL w formacie "dasdas;dasdas;;dasdsadsa;dasdas;das" na kolumnę w tabeli na stronie. Gdzie średnik będzie oznaczał przejście do następnego wiersza. I tak dla każdej kolumny.
Turson
17.01.2014, 23:55:23
To już się pogubiłem. W jednej kolumnie masz dane porozdzielane średnikami?
explode() zwraca tablicę, z której możesz ułożyc tabele
Larv
18.01.2014, 10:16:42
Mam tabelę w bazie z polami:
id,id_grupy,godz,pn,wt,sr,czw,pt,sb,nd.
Chciałbym, aby dla danej grupy wyswietlało mi plan w tabeli.
Do bazy wprowadzałbym dane w następujący sposób:
ID|id_grupy|Godziny |Poniedzialek |Wtorek | itd.
1 | 22 |8-10;10-12|Biologia; Chemia|Matma;Polski|
a na stronie chcialbym otrzymac:
|Godziny|Poniedzialek|Wtorek|
|8-10 |Biologia |Matma|
|10-12 |Chemia |Polski|
Wyjaśniłem bardziej?
refresh
Kshyhoo
18.01.2014, 10:52:40
Pokaż, co stworzyłeś do tej pory...
Larv
18.01.2014, 11:14:14
<title>Plan Zajęć</title>
<?php
include 'config.php';
db_connect();
if(!$_SESSION['logged'])
{
include_once('pol2.php');
}
else include_once('pol.php');
echo "<CENTER><TABLE border=2 bordercolor=black cellspacing=3 cellpading=5 width=600>"; echo "<TR>Plan zajęć:</TR>"; echo "<TR bgcolor=#0066cc>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Godzina"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Poniedziałek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Wtorek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Środa"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Czwartek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Piątek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Sobota"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Niedziela"."</center></FONT></TD>";
{
echo "<TR bgcolor=#99ccff>"; echo "<TD>".$tworzgodz['godzina']." "."</TD>"; echo "<TD>".$tworzpn['poniedzialek']." "."</TD>"; echo "<TD>".$tworzwt['wtorek']." "."</TD>"; echo "<TD>".$tworzsr['sroda']." "."</TD>"; echo "<TD>".$tworzczw['czwartek']." "."</TD>"; echo "<TD>".$tworzpt['piatek']." "."</TD>"; echo "<TD>".$tworzsb['sobota']." "."</TD>"; echo "<TD>".$tworznd['niedziela']." "."</TD>";
}
echo "</TABLE></CENTER>"; <center><INPUT TYPE=Button VALUE='Powrót do poprzedniej strony' onClick='history.back()'></center>";
db_close();
?>
wiem, że ta pętla do tworzenia tabeli jest zła, nie mam pojęcia jak sobie poradzić z tym wyświetlaniem
Kshyhoo
18.01.2014, 11:22:39
Przede wszystkim, naucz się pobierać dane z bazy. Wykonanie x zapytań praktycznie o to samo, nie jest najlepszym rozwiązaniem.
Magiczne zapytanie.
Larv
18.01.2014, 11:33:03
czyli chodzi Ci o mniej więcej coś takiego?:
...
...
$tworzgodz = explode(";", $plan['godzina']);
Turson
18.01.2014, 11:43:10
Nie przecież nie pobrałeś nic z bazy... Kshyhoo dał ci linka jak pobrać
Larv
18.01.2014, 12:25:47
<title>Plan Zajęć</title>
<?php
include 'config.php';
db_connect();
if(!$_SESSION['logged'])
{
include_once('pol2.php');
}
else include_once('pol.php');
echo "<CENTER><TABLE border=2 bordercolor=black cellspacing=3 cellpading=5 width=600>"; echo "<TR>Plan zajęć:</TR>"; echo "<TR bgcolor=#0066cc>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Godzina"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Poniedziałek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Wtorek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Środa"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Czwartek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Piątek"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Sobota"."</center></FONT></TD>"; echo "<TD><FONT COLOR=WHITE SIZE=1><center>"."Niedziela"."</center></FONT></TD>";
$tworzgodz = explode(";", $plan['godziny']); $tworzpn = explode(";", $plan['poniedzialek']); $tworzwt = explode(";", $plan['wtorek']); $tworzsr = explode(";", $plan['sroda']); $tworzczw = explode(";", $plan['czwartek']); $tworzpt= explode(";", $plan['piatek']); $tworzsb = explode(";", $plan['sobota']);; $tworznd = explode(";", $plan['niedziela']);
$tmpcount = count($tworzpn); for ($i = 0; $i < $tmpcount; $i++){
echo "<TR bgcolor=#99ccff>"; echo "<TD>".$tworzgodz[$i]." "."</TD>"; echo "<TD>".$tworzpn[$i]." "."</TD>"; echo "<TD>".$tworzwt[$i]." "."</TD>"; echo "<TD>".$tworzsr[$i]." "."</TD>"; echo "<TD>".$tworzczw[$i]." "."</TD>"; echo "<TD>".$tworzpt[$i]." "."</TD>"; echo "<TD>".$tworzsb[$i]." "."</TD>"; echo "<TD>".$tworznd[$i]." "."</TD>"; }
echo "</TABLE></CENTER>"; <center><INPUT TYPE=Button VALUE='Powrót do poprzedniej strony' onClick='history.back()'></center>";
db_close();
?>
Zrobiłem!:D Dzięki wielkie. Trochę nie ograniam.