skrypt imieninowy mający problem z przełomem miesiąca

skrypt imieninowy mający problem z przełomem miesiąca
0

Może lepiej zrobić jakąś bazę danych na podstawie:

https://pl.wikipedia.org/wiki/Imieniny

Prosta tabela SQL z kolumnami:

id,
day,
month,
name

Po czym SQL który wyciągnie z tego dane na podstawie dowolnego miesiąca i dnia miesiąca?

Ja w każdym razie tak bym to zrobił, i prawdopodobnie dla Ciebie też byłoby to prostsze i bardziej eleganckie rozwiązanie. Tylko czy potrafisz tworzyć bazy danych?

1

mój poziom znajomości php to "0", a baz danych to "-10" 🙁

pierwszy zrzut to to co jest przy skrypcie, który tu był modyfikowany

screenshot-20250203093233.png

to skrypt modyfikowany przez Ciebie:
screenshot-20250203094145.png

tak w ogóle, to przy okazji tej dyskusji przyszło mi takie pytanie do głowy 😀 dla Wszystkich

ponieważ pÓÓÓÓki co mam oddzielne skrypty na imieniny i święta na dziś i na jutro, które bazują na tych samych tablicach (oczywiście innych święta i innych imieniny), skrypt Riddie połączył je i stąd pytanie ;):

czy da się to tak skleić żeby tablica była wspólna dla skryptów na dziś i na jutro będąca plikiem zewnętrznym (ponieważ na stronie musiałbym to przebudowywać gdyż dzisiaj jest w jednej komórce tabeli, a jutro w innej,

pasowałoby mi więc żeby dla dwóch skryptów na dziś i na jutro była jena tablica z imieninami ( u Riddie to tak jest tylko, że tablica jest jedna, ale "sklejone" jest dziś i jutro)

mam nadziję, że jakoś to wyjaśniłem zrozumiale 😀

0
ikp-php3 napisał(a):

screenshot-20250203093233.png

to skrypt modyfikowany przez Ciebie:
screenshot-20250203094145.png

Okay! pokaż źródło HTML strony. I może mógłbyś pokazać cały kod który generuje ten widok?

0

to adres strony, zobaczysz źródło: https://www.24ikp.pl/serwis/serwis3.php

a to cały kod już be skracania:

Kopiuj
<?php

$today = new DateTime();
$tomorrow = $today->modify('+1 day');

$todayNameDay = namesByNameDay($today);
$tomorrowNameDay = namesByNameDay($tomorrow);

if ($todayNameDay) {
    echo "Imieniny mają $todayNameDay";
} else {
    echo "Dzisiaj nie ma imienin.";
}

if ($tomorrowNameDay) {
    echo "Jutro imieniny mają $tomorrowNameDay";
} else {
    echo "Jutro nie ma imienin.";
}

function namesByNameDay(DateTime $date): ?string {

$nameDays[1][1] = "Mieczysława, Masława, Mieszka";
$nameDays[1][2] = "Izydora, Bazylego, Makarego, Narcyzy";
$nameDays[1][3] = "Arlety, Danuty, Lucjana";
$nameDays[1][4] = "Anieli, Elżbiety, Tytusa";
$nameDays[1][5] = "Edwarda, Hanny, Szymona";
$nameDays[1][6] = "Kacpra, Melchiora, Baltazara";
$nameDays[1][7] = "Juliana, Lucjana, Walentyny";
$nameDays[1][8] = "Artura, Rajmunda, Seweryny";
$nameDays[1][9] = "Adriana, Alicji, Teresy";
$nameDays[1][10] = "Ady, Jana, Wilhelma";
$nameDays[1][11] = "Feliksa, Honoraty, Marty";
$nameDays[1][12] = "Bernarda, Czesławy, Grety";
$nameDays[1][13] = "Bogumiła, Bogumiły, Weroniki";
$nameDays[1][14] = "Feliksa, Hilarego, Martyny";
$nameDays[1][15] = "Arnolda, Dory, Pawła";
$nameDays[1][16] = "Mascelego, Walerii, Włodzimierza";
$nameDays[1][17] = "Antoniego, Henryki, Mariana";
$nameDays[1][18] = "Beatrycze, Małgorzaty, Piotra";
$nameDays[1][19] = "Erwiny, Henryka, Mariusza";
$nameDays[1][20] = "Fabioli, Miły, Sebastiana";
$nameDays[1][21] = "Agnieszki, Jarosława, Nory";
$nameDays[1][22] = "Dominiki, Mateusza, Wincentego";
$nameDays[1][23] = "Fernandy, Jana, Rajmundy";
$nameDays[1][24] = "Felicji, Roberta, Sławy";
$nameDays[1][25] = "Miłosza, Pawła, Tatiany";
$nameDays[1][26] = "Lutosława, Normy, Pauliny";
$nameDays[1][27] = "Anieli, Juliana, Przemysława";
$nameDays[1][28] = "Agnieszki, Kariny, Lesława";
$nameDays[1][29] = "Franciszka, Konstancji, Salomei";
$nameDays[1][30] = "Martyny, Macieja, Teofila";
$nameDays[1][31] = "Joanny, Ksawerego, Luizy";

$nameDays[2][1] = "Brygidy, Dobrogniewa, Ignacego";
$nameDays[2][2] = "Joanny, Marii, Mirosława, Kornela";
$nameDays[2][3] = "Błażeja, Joanny, Oskara, Telimeny, Wawrzyńca";
$nameDays[2][4] = "Andrzeja, Mariusza, Józefa, Weroniki";
$nameDays[2][5] = "Agaty, Filipa, Justyniana";
$nameDays[2][6] = "Amandy, Bogdana, Doroty";
$nameDays[2][7] = "Ryszarda, Teodora, Wilhelminy";
$nameDays[2][8] = "Irminy, Piotra, Sylwii";
$nameDays[2][9] = "Bernarda, Eryki, Rajmunda";
$nameDays[2][10] = "Elwiry, Elizy, Jacka";
$nameDays[2][11] = "Bernadetty, Marii, Olgierda";
$nameDays[2][12] = "Czasława, Damiana, Normy";
$nameDays[2][13] = "Grzegorza, Lesława, Katarzyny";
$nameDays[2][14] = "Liliany, Walentyny, Walentego";
$nameDays[2][15] = "Arnolda, Jowity, Georginy";
$nameDays[2][16] = "Danuty, Daniela, Juliany";
$nameDays[2][17] = "Donata, Gizeli, Łukasza";
$nameDays[2][18] = "Konstancji, Krystiana, Sylwany";
$nameDays[2][19] = "Bettiny, Konrada, Mirosława";
$nameDays[2][20] = "Anety, Lehca, Leona";
$nameDays[2][21] = "Eleonory, Lenki, Kiejstuta";
$nameDays[2][22] = "Małgorzaty, Marty, Nikifora";
$nameDays[2][23] = "Damiana, Romana, Romany";
$nameDays[2][24] = "Boguty, Bogusza, Macieja";
$nameDays[2][25] = "Almy, Cezarego, Jarosława";
$nameDays[2][26] = "Bogumiła, Eweliny, Mirosława";
$nameDays[2][27] = "Gagrieli, Liwii, Leonarda";
$nameDays[2][28] = "Ludomira, Makarego, Wiliany";
$nameDays[2][29] = "Lecha, Lutomira";

$nameDays[3][1] = "Albina, Antoniny, Radosławy";
$nameDays[3][2] = "Halszki, Heleny, Karola";
$nameDays[3][3] = "Kingi, Maryna, Tycjana";
$nameDays[3][4] = "Adrianny, Kazimierza, Wacława";
$nameDays[3][5] = "Aurory, Fryderyka, Oliwii";
$nameDays[3][6] = "Jordana, Marcina, Róży";
$nameDays[3][7] = "Flicyty, Kajetana, Pauli";
$nameDays[3][8] = "Beaty, Juliana, Wincentego";
$nameDays[3][9] = "Dominika, Franciszki, Katarzyny";
$nameDays[3][10] = "Bożysławy, Cypriana, Marcelego";
$nameDays[3][11] = "Konstantego, Ludosława, Rozyny";
$nameDays[3][12] = "Grzegorza, Justyny, Józefiny";
$nameDays[3][13] = "Bożeny, Krystyny, Marka";
$nameDays[3][14] = "Dalii, Leona, Matyldy";
$nameDays[3][15] = "Delfiny, Longina, Ludwiki";
$nameDays[3][16] = "Izabeli, Henryka, Oktawii";
$nameDays[3][17] = "Reginy, Patryka, Zbyszka";
$nameDays[3][18] = "Edwarda, Narcyza, Zbysława";
$nameDays[3][19] = "Aleksandryny, Józefa, Nicety";
$nameDays[3][20] = "Joachima, Kiry, Maurycego";
$nameDays[3][21] = "Benedykta, Lubomiry, Lubomira";
$nameDays[3][22] = "Bogusława, Jagody, Katarzyny";
$nameDays[3][23] = "Feliksa, Konrada, Zbysławy";
$nameDays[3][24] = "Gabrieli, Marka, Seweryna";
$nameDays[3][25] = "Bolka, Cezaryny, Marioli";
$nameDays[3][26] = "Dory, Olgi, Teodora";
$nameDays[3][27] = "Ernesta, Jana, Marka";
$nameDays[3][28] = "Anieli, Kasrota, Soni";
$nameDays[3][29] = "Marka, Wiktoryny, Zenona";
$nameDays[3][30] = "Amelii, Dobromira, Leonarda";
$nameDays[3][31] = "Balbiny, Kamila, Kornelii";

$nameDays[4][1] = "Chryzamtyny, Grażyny, Zygmunta";
$nameDays[4][2] = "Franciszka, Malwiny, Władysława";
$nameDays[4][3] = "Pankracego, Renaty, Ryszarda";
$nameDays[4][4] = "Benedykta, Izodory, Wacławy";
$nameDays[4][5] = "Ireny, Kleofasa, Wincentego";
$nameDays[4][6] = "Ady, Celestyny, Ireneusza";
$nameDays[4][7] = "Donata, Herminy, Rufina";
$nameDays[4][8] = "Amadeusza, Cezaryny, Juliany";
$nameDays[4][9] = "Mai, Marcelego, Wadima";
$nameDays[4][10] = "Borysławy, Makarego, Michała";
$nameDays[4][11] = "Filipa, Izoldy, Leona";
$nameDays[4][12] = "Juliusza, Lubosława, Wiktoryny";
$nameDays[4][13] = "Artemona, Justyny, Przemysławy";
$nameDays[4][14] = "Bernarda, Martyny, Waleriana";
$nameDays[4][15] = "Adolfiny, Odetty, Wacława";
$nameDays[4][16] = "Bernarda, Biruty, Erwina";
$nameDays[4][17] = "Anicety, Klary, Rudolfina";
$nameDays[4][18] = "Apoloniusza, Bogusławy, Gościsławy";
$nameDays[4][19] = "Alfa, Leonii, Tytusa";
$nameDays[4][20] = "Agnieszki, Amalii, Czecha";
$nameDays[4][21] = "Jarosława, Konrada, Selmy";
$nameDays[4][22] = "Łukasza, Kai, Nastazji";
$nameDays[4][23] = "Ilony, Jerzego, Wojciecha";
$nameDays[4][24] = "Bony, Horacji, Jerzego";
$nameDays[4][25] = "Jarosława, Marka, Wiki";
$nameDays[4][26] = "Marii, Marzeny, Ryszarda";
$nameDays[4][27] = "Sergiusza, Teofila, Zyty";
$nameDays[4][28] = "Bogny, Walerii, Witalisa";
$nameDays[4][29] = "Hugona, Piotra, Roberty";
$nameDays[4][30] = "Balladyny, Lilli, Mariana";

$nameDays[5][1] = "Józefa, Lubomira, Ramony";
$nameDays[5][2] = "Longiny, Toli, Zygmunta";
$nameDays[5][3] = "Jaropełka, Marii, Niny";
$nameDays[5][4] = "Floriana, Michała, Moniki";
$nameDays[5][5] = "Irydy, Tamary, Waldemara";
$nameDays[5][6] = "Beniny, Filipa, Judyty";
$nameDays[5][7] = "Augusta, Gizeli, Ludomiry";
$nameDays[5][8] = "Kornela, Lizy, Stanisława";
$nameDays[5][9] = "Grzegorza, Karoliny, Karola";
$nameDays[5][10] = "Antoniny, Izydory, Jana";
$nameDays[5][11] = "Igi, Mamerta, Miry";
$nameDays[5][12] = "Dominika, Imeldy, Pankracego";
$nameDays[5][13] = "Agnieszki, Magdaleny, Serwacego";
$nameDays[5][14] = "Bonifacego, Julity, Macieja";
$nameDays[5][15] = "Dionizego, Nadziei, Zofii";
$nameDays[5][16] = "Andrzeja, Jędrzeja, Małgorzaty";
$nameDays[5][17] = "Brunony, Sławomira, Wery";
$nameDays[5][18] = "Alicji, Edwina, Eryka";
$nameDays[5][19] = "Celestyny, Iwony, Piotra";
$nameDays[5][20] = "Bazylego, Bernardyna, Krystyny";
$nameDays[5][21] = "Jana, Moniki, Wiktora";
$nameDays[5][22] = "Emila, Neleny, Romy";
$nameDays[5][23] = "Leoncjusza, Michała, Renaty";
$nameDays[5][24] = "Joanny, Zdenka, Zuzanny";
$nameDays[5][25] = "Borysa, Magdy, Marii-Magdaleny";
$nameDays[5][26] = "Eweliny, Jana, Pawła";
$nameDays[5][27] = "Amandy, Jana, Juliana";
$nameDays[5][28] = "Augustyna, Ingi, Jaromira";
$nameDays[5][29] = "Benity, Maksymiliana, Teodozji";
$nameDays[5][30] = "Ferdynanda, Gryzeldy, Zyndrama";
$nameDays[5][31] = "Anieli, Feliksa, Kamili";

$nameDays[6][1] = "Gracji, Jakuba, Konrada";
$nameDays[6][2] = "Erazma, Marianny, Marzeny";
$nameDays[6][3] = "Anatola, Leszka, Tamary";
$nameDays[6][4] = "Christy, Helgi, Karola";
$nameDays[6][5] = "Bonifacego, Kiry, Waltera";
$nameDays[6][6] = "Laury, Laurentego, Nory";
$nameDays[6][7] = "Ariadny, Jarosława, Roberta";
$nameDays[6][8] = "Ady, Celii, Medarda";
$nameDays[6][9] = "Anny-Marii, Felicjana, Sławoja";
$nameDays[6][10] = "Bogumiła, Diany, Małgorzaty";
$nameDays[6][11] = "Barnaby, Benedykta, Flory";
$nameDays[6][12] = "Gwidona, Leonii, Niny";
$nameDays[6][13] = "Antoniego, Gracji, Lucjana";
$nameDays[6][14] = "Bazylego, Elizy, Justyny";
$nameDays[6][15] = "Jolanty, Lotara, Wita";
$nameDays[6][16] = "Aliny, Anety, Benona";
$nameDays[6][17] = "Laury, Leszka, Marcjana";
$nameDays[6][18] = "Elżbiety, Marka, Pauli";
$nameDays[6][19] = "Gerwazego, Protazego, Sylwii";
$nameDays[6][20] = "Bogny, Rafaeli, Rafała";
$nameDays[6][21] = "Alicji, Alojzego, Rudolfa";
$nameDays[6][22] = "Pauliny, Sabiny, Tomasza";
$nameDays[6][23] = "Albina, Wandy, Zenona";
$nameDays[6][24] = "Danuty, Jana, Janiny";
$nameDays[6][25] = "Łucji, Witolda, Wilhelma";
$nameDays[6][26] = "Jana, Pauliny, Rudolfiny";
$nameDays[6][27] = "Cypriana, Emanueli, Władysława";
$nameDays[6][28] = "Florentyny, Ligii, Leona";
$nameDays[6][29] = "Pawła, Piotra, Salomei";
$nameDays[6][30] = "Arnolda, Emiliany, Lucyny";

$nameDays[7][1] = "Bogusza, Haliny, Mariana";
$nameDays[7][2] = "Kariny, Serafiny, Urbana";
$nameDays[7][3] = "Anatola, Jacka, Mirosławy";
$nameDays[7][4] = "Aureli, Malwiny, Zygfryda";
$nameDays[7][5] = "Antoniego, Bartłomieja, Karoliny";
$nameDays[7][6] = "Dominiki, Jaropełka, Łucji";
$nameDays[7][7] = "Estery, Kiry, Rudolfa";
$nameDays[7][8] = "Arnolda, Edgara, Elżbiety";
$nameDays[7][9] = "Hieronima, Palomy, Weroniki";
$nameDays[7][10] = "Filipa, Sylwany, Witalisa";
$nameDays[7][11] = "Benedykta, Kariny, Olgi";
$nameDays[7][12] = "Brunona, Jana, Wery";
$nameDays[7][13] = "Danieli, Irwina, Małgorzaty";
$nameDays[7][14] = "Kamili, Kamila, Marcelego";
$nameDays[7][15] = "Henryka, Igi, Włodzimierza";
$nameDays[7][16] = "Eustachego, Mariki, Mirelli";
$nameDays[7][17] = "Aleksego, Bogdana, Martyny";
$nameDays[7][18] = "Kamila, Karoliny, Roberta";
$nameDays[7][19] = "Alfreny, Rufina, Wincentego";
$nameDays[7][20] = "Fryderyka, Małgorzaty, Seweryny";
$nameDays[7][21] = "Danieli, Wawrzyńca, Wiktora";
$nameDays[7][22] = "Magdaleny, Mileny, Wawrzyńca";
$nameDays[7][23] = "Sławy, Sławosza, Żelisławy";
$nameDays[7][24] = "Kingi, Krystyna, Michaliny";
$nameDays[7][25] = "Jakuba, Krzysztofa, Walentyny";
$nameDays[7][26] = "Anny, Mirosławy, Joachima";
$nameDays[7][27] = "Aureliusza, Natalii, Rudolfa";
$nameDays[7][28] = "Ady, Wiwiany, Sylwiusza";
$nameDays[7][29] = "Marty, Konstantego, Olafa";
$nameDays[7][30] = "Julity, Ludmiły, Zdobysława";
$nameDays[7][31] = "Ignacego, Lodomiry, Romana";

$nameDays[8][1] = "Jarosława, Justyny, Nadziei";
$nameDays[8][2] = "Gustawa, Kariny, Stefana";
$nameDays[8][3] = "Augustyna, Kamelii, Lidii";
$nameDays[8][4] = "Dominiki, Dominika, Protazego";
$nameDays[8][5] = "Emila, Karoliny, Kary";
$nameDays[8][6] = "Jakuba, Sławy, Wincentego";
$nameDays[8][7] = "Donaty, Olechny, Kajetana";
$nameDays[8][8] = "Izy, Rajmunda, Seweryna";
$nameDays[8][9] = "Klary, Romana, Rozyny";
$nameDays[8][10] = "Bianki, Borysa, Wawrzyńca";
$nameDays[8][11] = "Luizy, Włodzmierza, Zuzanny";
$nameDays[8][12] = "Hilarii, Juliana, Lecha";
$nameDays[8][13] = "Elwiry, Hipolita, Radosławy";
$nameDays[8][14] = "Alfreda, Maksymiliana, Selmy";
$nameDays[8][15] = "Marii, Napoleona, Stelii";
$nameDays[8][16] = "Joachima, Nory, Stefana";
$nameDays[8][17] = "Anity, Elizy, Mirona";
$nameDays[8][18] = "Bogusława, Bronisława, Ilony";
$nameDays[8][19] = "Emilii, Julinana, Konstancji";
$nameDays[8][20] = "Bernarda, Sabiny, Samuela";
$nameDays[8][21] = "Franciszka, Kazimiery, Ruty";
$nameDays[8][22] = "Cezarego, Marii, Zygfryda";
$nameDays[8][23] = "Apolinarego, Miły, Róży";
$nameDays[8][24] = "Bartosza, Jerzego, Maliny";
$nameDays[8][25] = "Belii, Ludwika, Luizy";
$nameDays[8][26] = "Ireneusza, Konstantego, Marii";
$nameDays[8][27] = "Cezarego, Małgorzaty, Moniki";
$nameDays[8][28] = "Adeliny, Erazma, Sobiesława";
$nameDays[8][29] = "Beaty, Racibora, Sabiny";
$nameDays[8][30] = "Benona, Jowity, Szczęsnego";
$nameDays[8][31] = "Cyrusa, Izabeli, Rajmundy";

$nameDays[9][1] = "Belindy, Bronisza, Idziego";
$nameDays[9][2] = "Dionizy, Izy, Juliana";
$nameDays[9][3] = "Joachima, Liliany, Szymona";
$nameDays[9][4] = "Dalii, Idy, Rocha";
$nameDays[9][5] = "Doroty, Justyna, Wawrzyńca";
$nameDays[9][6] = "Beaty, Eugeniusza, Lidy";
$nameDays[9][7] = "Reginy, Marka, Melchiora";
$nameDays[9][8] = "Czcibora, Marii, Serafiny";
$nameDays[9][9] = "Aldony, Jakuba, Sergiusza";
$nameDays[9][10] = "Eligii, Irmy, Łukasza";
$nameDays[9][11] = "Dagny, Jacka, Prota";
$nameDays[9][12] = "Amadeusza, Gwidy, Sylwiny";
$nameDays[9][13] = "Apolinarego, Eugenii, Lubomira";
$nameDays[9][14] = "Bernarda, Mony, Roksany";
$nameDays[9][15] = "Albina, Lolity, Ronalda";
$nameDays[9][16] = "Jagienki, Kamili, Korneliusza";
$nameDays[9][17] = "Franciszka, Lamberty, Narcyza";
$nameDays[9][18] = "Ireny, Irminy, Stanisława";
$nameDays[9][19] = "Januarego, Konstancji, Leopolda";
$nameDays[9][20] = "Eustachego, Faustyny, Renaty";
$nameDays[9][21] = "Darii, Mateusza, Wawrzyńca";
$nameDays[9][22] = "Maury, Milany, Tomasza";
$nameDays[9][23] = "Bogusława, Liwiusza, Tekli";
$nameDays[9][24] = "Dory, Gerarda, Maryny";
$nameDays[9][25] = "Aureli, Kamila, Kleofasa";
$nameDays[9][26] = "Cypriana, Justyny, Łucji";
$nameDays[9][27] = "Damiana, Mirabeli, Wincentego";
$nameDays[9][28] = "Libuszy, Wacławy, Wacława";
$nameDays[9][29] = "Michaliny, Michała, Rafała";
$nameDays[9][30] = "Geraldy, Honoriusza, Wery";

$nameDays[10][1] = "Heloizy, Igora, Remigiusza";
$nameDays[10][2] = "Racheli, Sławy, Teofila";
$nameDays[10][3] = "Bogumiła, Gerarda, Józefy";
$nameDays[10][4] = "Edwina, Rosławy, Rozalii";
$nameDays[10][5] = "Flawii, Justyna, Rajmunda";
$nameDays[10][6] = "Artura, Fryderyki, Petry";
$nameDays[10][7] = "Krystyna, Marii, Marka";
$nameDays[10][8] = "Brygidy, Loreny, Marcina";
$nameDays[10][9] = "Arnolda, Ludwika, Sybili";
$nameDays[10][10] = "Franciszka, Loretty, Poli";
$nameDays[10][11] = "Aldony, Brunona, Emila";
$nameDays[10][12] = "Krystyny, Maksa, Serafiny";
$nameDays[10][13] = "Edwarda, Geraldyny, Teofila";
$nameDays[10][14] = "Alany, Damiana, Liwii";
$nameDays[10][15] = "Jadwigi, Leonarda, Teresy";
$nameDays[10][16] = "Ambrożego, Florentyny, Gawła";
$nameDays[10][17] = "Antonii, Ignacego, Wiktora";
$nameDays[10][18] = "Hanny, Klementyny, Łukasza";
$nameDays[10][19] = "Michaliny, Michała, Piotra";
$nameDays[10][20] = "Ireny, Kleopatry, Witalisa";
$nameDays[10][21] = "Celiny, Hilarego, Janusza";
$nameDays[10][22] = "Haliszki, Lody, Przybysłšwa";
$nameDays[10][23] = "Edwarda, Marleny, Seweryna";
$nameDays[10][24] = "Arety, Marty, Marcina";
$nameDays[10][25] = "Ingi, Maurycego, Sambora";
$nameDays[10][26] = "Ewarysta, Lucyny, Lutosławy";
$nameDays[10][27] = "Iwony, Noemi, Szymona";
$nameDays[10][28] = "Narcyza, Serafina, Wioletty";
$nameDays[10][29] = "Angeli, Przemysława, Zenobii";
$nameDays[10][30] = "Augustyny, Łukasza, Urbana";

$nameDays[11][1] = "Konrada, Seweryny, Wiktoryny";
$nameDays[11][2] = "Bohdany, Henryka, Tobiasza";
$nameDays[11][3] = "Huberta, Miły, Sylwii";
$nameDays[11][4] = "Albertyny, Karola, Olgierda";
$nameDays[11][5] = "Balladyny, Elżbiety, Sławomira";
$nameDays[11][6] = "Arletty, Feliksa, Leonarda";
$nameDays[11][7] = "Antoniego, Kaliny, Przemiły";
$nameDays[11][8] = "Klaudii, Seweryna, Wiktoriusza";
$nameDays[11][9] = "Anatolii, Gracji, Teodora";
$nameDays[11][10] = "Leny, Lubomira, Natalii";
$nameDays[11][11] = "Bartłomieja, Gertrudy, Marcina";
$nameDays[11][12] = "Konrada, Renaty, Witolda";
$nameDays[11][13] = "Arkadii, Krystyna, Stanisławy";
$nameDays[11][14] = "Emila, Laury, Rogera";
$nameDays[11][15] = "Amielii, Idalii, Leopolda";
$nameDays[11][16] = "Edmunda, Marii, Marka";
$nameDays[11][17] = "Grzegorza, Salomei, Walerii";
$nameDays[11][18] = "Klaudyny, Romana, Tomasza";
$nameDays[11][19] = "Elżbiety, Faustyny, Pawła";
$nameDays[11][20] = "Anatola, Edyty, Rafała";
$nameDays[11][21] = "Janusza, Marii, Reginy";
$nameDays[11][22] = "Cecylii, Jonatana, Marka";
$nameDays[11][23] = "Adeli, Felicyty, Klemensa";
$nameDays[11][24] = "Emmy, Flory, Romana";
$nameDays[11][25] = "Elżbiety, Katarzyny, Klemensa";
$nameDays[11][26] = "Leona, Leonarda, Lesławy";
$nameDays[11][27] = "Franciszka, Kseni, Maksymiliana";
$nameDays[11][28] = "Jakuba, Stefana, Romy";
$nameDays[11][29] = "Błażeja, Margerity, Saturnina";
$nameDays[11][30] = "Andrzeja, Maury, Ondraszka";

$nameDays[12][1] = "Blanki, Edmunda, Eligiusza, Seweryna";
$nameDays[12][2] = "Balbiny, Ksawerego, Pauliny";
$nameDays[12][3] = "Hilarego, Franciszki, Ksawery";
$nameDays[12][4] = "Barbary, Hieronima, Krystiana";
$nameDays[12][5] = "Kryspiny, Norberta, Sabiny";
$nameDays[12][6] = "Dionizji, Leontyny, Mikołaja";
$nameDays[12][7] = "Agaty, Dalii, Sobiesława";
$nameDays[12][8] = "Delfiny, Marii, Wirginiusza";
$nameDays[12][9] = "Anety, Leokadii, Wiesława";
$nameDays[12][10] = "Danieli, Bohdana, Julii";
$nameDays[12][11] = "Biny, Damazego, Waldemara";
$nameDays[12][12] = "Ady, Aleksandra, Dagmary";
$nameDays[12][13] = "Dalidy, Juliusza, Łucji";
$nameDays[12][14] = "Alfreda, Izydora, Zoriny";
$nameDays[12][15] = "Celiny, Ireneusza, Niny";
$nameDays[12][16] = "Albiny, Sebastiana, Zdzisławy";
$nameDays[12][17] = "Jolanty, Łukasza, Olimpii";
$nameDays[12][18] = "Bogusława, Gracjana, Laury";
$nameDays[12][19] = "Beniaminy, Dariusza, Gabrieli";
$nameDays[12][20] = "Bogumiły, Dominika, Zefiryna";
$nameDays[12][21] = "Honoraty, Seweryny, Tomasza";
$nameDays[12][22] = "Bożeny, Drogomira, Zenona";
$nameDays[12][23] = "Dagny, Sławomiry, Wiktora";
$nameDays[12][24] = "Adama, Ewy, Irminy";
$nameDays[12][25] = "Anety, Glorii, Piotra";
$nameDays[12][26] = "Dionizego, Kaliksta, Szczepana";
$nameDays[12][27] = "Fabioli, Jana, Żanety";
$nameDays[12][28] = "Antoniusza, Cezarego, Teofilii";
$nameDays[12][29] = "Dawida, Dionizy, Tomasza";
$nameDays[12][30] = "Eugeniusza, Katarzyny, Sabiny";
$nameDays[12][31] = "Mariusza, Melanii, Sylwestra";
    $month = $date->format('n');
    $day = $date->format('j');
    if (array_key_exists($month, $nameDays) && array_key_exists($day, $nameDays[$month])) {
        if ($nameDays[$month][$day] !== '') {
            return $nameDays[$month][$day];
        }
    }
    return null;
}
?>&nbsp;
0
ikp-php3 napisał(a):

to adres strony, zobaczysz źródło: https://www.24ikp.pl/serwis/serwis3.php

Okej - czyli nie piszesz sam całej strony, tylko dostarczasz fragment, który jest dołączany czy tak? Należałoby się zastanowić w jaki sposób Twój skrypt jest dołączany - jak obstawiam, że Twój skrypt musi wypluć dane w jakimś konkretnym formacie - np. od nowej linii, od kropki, zawierać jakieś konkretne słowa, etc. Czy masz możliwość podejrzeć jak Twój skrypt jest dołączany? Jeśli nie, to pozostaje zgadywać - np. dodać nową linię.

W wątku na forum wklejałeś kod kilka razy. Czy masz jeden plik który pokazuje daty dla dwóch imienim? Czy może masz osobny skrypt na dzisiaj, i osobny na jutro? 🤔

1

tworzę plik php ze skryptem, (dzięki Wam ;) ) który np. wyświetla imieniny na jutro i includem wklejam go na stronę gdzie go chcę mieć ( plik ze skryptem jest w oddzielnym katalogu, gdzie są tez inne skrypty które są używane na stronie)

co do dat, imienin, świąt są to oddzielne skrypty na jutro i na dziś - dlatego byłoby wygodnie mieć skrypty imieninowy i świąteczny z tablicą zewnętrzną bo nie musiałby ciągle przy uzupełnianiu tych tablic kopiować do dwóch plików

rozwiązanie bazy danych nie wchodzi w grę bo całkiem temat jest mi obcy 🙁

stronę buduję sam, oczywiście korzystając z rad ludzi, którzy na tym sie znają i porada jest na tyle jasna, że ją ogarnę ;)

0
ikp-php3 napisał(a):

tworzę plik php ze skryptem, (dzięki Wam ;) ) który np. wyświetla imieniny na jutro i includem wklejam go na stronę gdzie go chcę mieć ( plik ze skryptem jest w oddzielnym katalogu, gdzie są tez inne skrypty które są używane na stronie)

co do dat, imienin, świąt są to oddzielne skrypty na jutro i na dziś - dlatego byłoby wygodnie mieć skrypty imieninowy i świąteczny z tablicą zewnętrzną bo nie musiałby ciągle przy uzupełnianiu tych tablic kopiować do dwóch plików

Pokaż miejsce w którym robisz include'y obu skryptów - to miejsce które robi <td> na dzisiaj i na jutro.

0
Kopiuj

<table width="1050" height="50" border="0" cellpadding="0" cellspacing="0" valign="middle">

<tr width="100%">

<td align="left" valign="middle" class="td_zaduzy" width="">

<?php readfile("https://www.24ikp.pl/00dodatki/data.php"); ?>

</td>

<td align="center" valign="middle" class="td_zaduzy" width="">

<span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny.php"); ?></span>

</td>

<td align="center" valign="middle" class="td_zaduzy">

&nbsp;<span style="color: #FF0000"><?php readfile("https://www.24ikp.pl/00dodatki/swieta2025.php"); ?></span>

</td></tr>

<tr width="100%">

<td align="left" valign="middle" class="td_zaduzy" width="">

<?php readfile("https://www.24ikp.pl/00dodatki/data_jutro.php"); ?>

</td>

<td align="center" valign="middle" class="td_zaduzy" width="">

<span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny_jutro.php"); ?></span>

</td>

<td align="center" valign="middle" class="td_zaduzy">

&nbsp;<span style="color: #FF0000"><?php readfile("https://www.24ikp.pl/00dodatki/swieta2025jutro.php"); ?></span>

</td></tr>

</table>

tu akurat do pliku wklejam readfile, a później includ tego pliku do strony docelowej , wykorzystałm redffile bo chyba sam includ nie sprawdzał się gdy zmieniałem poziom strony

0

Okej - no to zobacz co jest w pliku imieniny_jutro.php?

0

tz.? czy chodzi o to, że jest dziś i jutro?

0

No zobacz, w kodzie który wkleiłes, dodajesz dwa pliki:

Kopiuj
<td align="center" valign="middle" class="td_zaduzy" width="">

<span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny.php"); ?></span>

</td>
Kopiuj
<td align="center" valign="middle" class="td_zaduzy" width="">

<span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny_jutro.php"); ?></span>

</td>

Najpierw https://www.24ikp.pl/00dodatki/imieniny.php, potem https://www.24ikp.pl/00dodatki/imieniny_jutro.php. Pokażesz oba te pliki?

0

ten na jutro to jest Twój, a ten imieninowy to jest pierwotny skrypt, który był poprawiany tutaj bo był problem ze zrobieniem z niego imienin na dzień następny

Kopiuj
<?php

$imieniny[1][1] = "Mieczysława, Masława, Mieszka";
$imieniny[1][2] = "Izydora, Bazylego, Makarego, Narcyzy";
$imieniny[1][3] = "Arlety, Danuty, Lucjana";
$imieniny[1][4] = "Anieli, Elżbiety, Tytusa";

//tu oczywiście reszta tablicy

$imieniny[12][30] = "Eugeniusza, Katarzyny, Sabiny";
$imieniny[12][31] = "Mariusza, Melanii, Sylwestra";

echo "".$imieniny[date("n",time())][date("j",time())];

na razie nic nie zmieniałem w ustawieniach bo i tak Twój na razie się zbiesił 🙁 i nie chce nic wyświetlać :(

0
ikp-php3 napisał(a):

ten na jutro to jest Twój, a ten imieninowy to jest pierwotny skrypt, który był poprawiany tutaj bo był problem ze zrobieniem z niego imienin na dzień następny

Jaką masz wersję PHP na serwerze?

0

php 5.4

a te funkcje readfile są wyżej jest to po prostu pełny odnośnik do pllków ze skryptami

0
ikp-php3 napisał(a):

php 5.4

a te funkcje readfile są wyżej jest to po prostu pełny odnośnik do pllków ze skryptami

Kod który podałem korzystał z nowszych elementów języka.

Popraw linijkę

Kopiuj
function namesByNameDay(DateTime $date): ?string {

na

Kopiuj
function namesByNameDay($date) {

I powinno zadziałać.

To powiedziawszy, wersja PHP 5.4 dostała kres życia w 2012 roku. Należałoby od niej już całkiem odejść.

0

mam świadomość, ale jak pomyślę, że trzeba zmieniać kodowanie bo jak podniosę wersję to mi krzaczki rosną na stronie i pewnie jakieś inne rzeczy też wyjdą, na wszelki wypadek przy tym remoncie polikwidowałem krótkie tagi

nie wiem czy jak będzie taka konieczność to nie przejdę na joola, ale znowu się uczyć to mnie rozluźnia bo ja osobiście nie mam nic wspólnego z informatyką :( a i wik nie zachęca do nauki ;)

skrypt ruszył - BRAWO, przerobię ten plik gdzie wklejane są te srypty, żeby działało jak trza 😀 - dziękuję

pewnie jak zmienię tablicę ze świętami to tez będzie działało?

0

ups jednak jest feler - i dzisiaj i jutro pokazuje imieniny jutrzejsze :(

0
ikp-php3 napisał(a):

witam,

używam skryptu imieninowego, ktory wygląda mnie więcej tak (fragment)

Kopiuj
<?php

$imieniny[1][5] = "Edwarda, Hanny, Szymona";
$imieniny[1][6] = "Kacpra, Melchiora, Baltazara";

$imieniny[2][1] = "Brygidy, Dobrogniewa, Ignacego";
$imieniny[2][2] = "Kornela, Marii, Mirosławy";
$imieniny[12][31] = "Mariusza, Melanii, Sylwestra";

echo "".$imieniny[date("n",time())][date("j",time())];

?>

działa ok, chciałem go przerobić aby pobierał imieniny na dzień następny i przyciął się na przełomie miesiąca, wiem dlaczego, ale nie wiem jak to poprawić, aby się nie przycinał, jutro jak zacznie się luty pewnie będzie działał dobrze do przełomu miesiąca 🙁

Kopiuj
<?php

$imieniny[1][5] = "Edwarda, Hanny, Szymona";
$imieniny[1][6] = "Kacpra, Melchiora, Baltazara";

$imieniny[2][1] = "Brygidy, Dobrogniewa, Ignacego";
$imieniny[2][2] = "Kornela, Marii, Mirosławy";
$imieniny[12][31] = "Mariusza, Melanii, Sylwestra";

echo "".$imieniny[date("n",time())][date("j",time())+1];

?>

jak to ogarnąć żeby się nie przycinał w ostatnim dniu miesiąca, co zmienić? - proszę o pomoc ;)

Można to rozwiązać np. tak:

Kopiuj
# Dzień roku liczony od zera.
$dnroku = intval (date ('z'));
# Tablica imienin załadowanych z pliku.
$kalendarz = file ('imieniny.txt');
# Dzisiejsze imieniny.
$imdzis = trim ($kalendarz[$dnroku]);
echo "<P>Dziś obchodzimy imieniny $imdzis.</P>";
# Ile jest dni w roku?
$rok = intval (date ('Y'));
$dwr = (($rok % 4 == 0 && $rok % 100 > 0) || $rok % 400 == 0) ? 366 : 365;
# Jutrzejsze imieniny.
if (++$dnroku >= $dwr)
  $dnroku = 0;
$imjut = trim ($kalendarz[$dnroku]);
print "<P>Jutro: $imjut.</P>";

A w pliku imieniny.txt powinny być zawarte dane o imieninach, tj. powinien on być plikiem tekstowym o 366 wierszach zawierających imieniny dla kolejnych dni roku.

0

dziękuję, czy to tak powinno być?

Kopiuj
<?php

# Dzień roku liczony od zera.
$dnroku = intval (date ('z'));
# Tablica imienin załadowanych z pliku.
$kalendarz = file ('imieniny.txt');
# Dzisiejsze imieniny.
$imdzis = trim ($kalendarz[$dnroku]);
echo "<P>Dziś obchodzimy imieniny $imdzis.</P>";
# Ile jest dni w roku?
$rok = intval (date ('Y'));
$dwr = (($rok % 4 == 0 && $rok % 100 > 0) || $rok % 400 == 0) ? 366 : 365;
# Jutrzejsze imieniny.
if (++$dnroku >= $dwr)
  $dnroku = 0;
$imjut = trim ($kalendarz[$dnroku]);
print "<P>Jutro: $imjut.</P>";

?>

a co do tablicy to powinny być:
$dnroku[0] = "Edwarda, Hanny, Szymona";
$dnroku[1] = "Edwarda, Hanny, Szymona";

itd...
i nic poza tym?

a jak rozstrzygnąć luty

czy pod wersja php5.4 będzie działało

0

riddie ja nie potrafię ocenić a jeszcze tego nie sprawdzałem czy w ogóle działa,

twoje rozwiązanie podoba mi się, ale nie wiem czy doczytałaś że "ups jednak jest feler - i dzisiaj i jutro pokazuje imieniny jutrzejsze 🙁" - nie wiem dlaczego 🙁

na razie wróciłem to poprzedniego, żeby coś się świeciło bo uzupełniam tablicę imion

w rozwiązaniu Manna5 podoba mi się to, że tablica jest wyrzucona na zewnątrz i cały skrypt jest widoczny od razu

0
ikp-php3 napisał(a):

riddie ja nie potrafię ocenić a jeszcze tego nie sprawdzałem,

twoje rozwiązanie podoba mi się, ale nie wiem czy doczytałaś że "ups jednak jest feler - i dzisiaj i jutro pokazuje imieniny jutrzejsze 🙁" - nie wiem dlaczego 🙁

Czy nadal korzystasz z tego kodu?

Kopiuj
<td align="center" valign="middle" class="td_zaduzy" width="">
  <span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny.php"); ?></span>
</td>

<td align="center" valign="middle" class="td_zaduzy" width="">
  <span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny_jutro.php"); ?></span>
</td>

Jeśli tak, to pokaż treść plików imieniny.php oraz imieniny_jutro.php.

ikp-php3 napisał(a):

w rozwiązaniu Manna5 podoba mi się to, że tablica jest wyrzucona na zewnątrz i cały skrypt jest widoczny od razu

Rozumiem. W rozwiązaniu poprzednim, też łatwo można tą cechę, zobacz coś takiego:

Kopiuj
<?php

$today = new DateTime();
$tomorrow = $today->modify('+1 day');

$todayNameDay = namesByNameDay($today);
$tomorrowNameDay = namesByNameDay($tomorrow);

if ($todayNameDay) {
    echo "Imieniny mają $todayNameDay";
} else {
    echo "Dzisiaj nie ma imienin.";
}

if ($tomorrowNameDay) {
    echo "Jutro imieniny mają $tomorrowNameDay";
} else {
    echo "Jutro nie ma imienin.";
}

function namesByNameDay(DateTime $date): ?string
{
    $nameDays = include './names.php';
    $month = $date->format('n');
    $day = $date->format('j');
    if (array_key_exists($month, $nameDays) && array_key_exists($day, $nameDays[$month])) {
        if ($nameDays[$month][$day] !== '') {
            return $nameDays[$month][$day];
        }
    }
    return null;
}

Plik names.php:

Kopiuj
<?php
$nameDays[1][1] = "Mieczysława, Masława, Mieszka";
$nameDays[1][2] = "Izydora, Bazylego, Makarego, Narcyzy";
// ...
$nameDays[12][30] = "Eugeniusza, Katarzyny, Sabiny";
$nameDays[12][31] = "Mariusza, Melanii, Sylwestra";

return $nameDays;

To jest najprostszy przykład - ewentualnie można names.php zrobić funkcję, też byłoby dobrze.

0

nie pod Twój skrypt zmieniłem i teraz jest tylko (oczysiście Twój skrypt jest w pliku imieniny.php

Kopiuj
<table width="1050" height="50" border="0" cellpadding="0" cellspacing="0" valign="middle">

<tr width="100%">

<td align="left" valign="middle" class="td_zaduzy" width="">

<?php readfile("https://www.24ikp.pl/00dodatki/data.php"); ?><br>

<?php readfile("https://www.24ikp.pl/00dodatki/data_jutro.php"); ?>

</td>

<td align="center" valign="middle" class="td_zaduzy" width="">

<span style="color: #000066"><?php readfile("https://www.24ikp.pl/00dodatki/imieniny.php"); ?></span>

</td>

<td align="center" valign="middle" class="td_zaduzy">

&nbsp;<span style="color: #FF0000"><?php readfile("https://www.24ikp.pl/00dodatki/swieta2025.php"); ?></span><br>

&nbsp;<span style="color: #FF0000"><?php readfile("https://www.24ikp.pl/00dodatki/swieta2025jutro.php"); ?></span>

</td></tr>

</table>

natomiast to nie zmienia faktu że imieniny dzisiaj i jutro wyświetla jutrzejsze w obu pozycjach możesz sprawdzić ;) : https://www.24ikp.pl/serwis/serwis3.php

0
ikp-php3 napisał(a):

natomiast to nie zmienia faktu że imieniny dzisiaj i jutro wyświetla jutrzejsze w obu pozycjach możesz sprawdzić ;) : https://www.24ikp.pl/serwis/serwis3.php

Agh! 😄 Faktycznie, funkcja DateTime.modify() zmienia wartość w miejscu, zamiast zwrócić nową. Mój błąd.

Zamień ten kod:

Kopiuj
$today = new DateTime();
$tomorrow = $today->modify('+1 day');

na ten:

Kopiuj
$today = new DateTime();
$tomorrow = new DateTime();
$tomorrow->modify('+1 day');

I będzie działać.

0

i jest ok,

natomiast podoba mi się pomysł z zewnętrzna tablicą, spróbowałem ale znikło wszystko (znaczy imieniny dzisiejsze i jutrzejsze 🙁

chyba, że cos poknociłem ,

Kopiuj
<?php

$today = new DateTime();
$tomorrow = new DateTime();
$tomorrow->modify('+1 day');

$todayNameDay = namesByNameDay($today);
$tomorrowNameDay = namesByNameDay($tomorrow);

if ($todayNameDay) {
    echo "Imieniny mają $todayNameDay";
} else {
    echo "Dzisiaj nie ma imienin.";
}

if ($tomorrowNameDay) {
    echo "<br>Jutro imieniny mają $tomorrowNameDay";
} else {
    echo "Jutro nie ma imienin.";
}

function namesByNameDay($date): ?string

{
    $nameDays = include './imieniny_imiona.php';
    $month = $date->format('n');
    $day = $date->format('j');
    if (array_key_exists($month, $nameDays) && array_key_exists($day, $nameDays[$month])) {
        if ($nameDays[$month][$day] !== '') {
            return $nameDays[$month][$day];
        }
    }
    return null;
}
?>

a plik imieniny_imiona.php wygląda tak (oczywiście skróciłem:

Kopiuj
<?php

$nameDays[1][1] = "Mieczysława, Masława, Mieszka";
$nameDays[1][2] = "Izydora, Bazylego, Makarego, Narcyzy";
$nameDays[1][3] = "Arlety, Danuty, Lucjana";

$nameDays[12][30] = "Eugeniusza, Katarzyny, Sabiny";
$nameDays[12][31] = "Mariusza, Melanii, Sylwestra";

return $nameDays;

?>
0
ikp-php3 napisał(a):

i jest ok,

natomiast podoba mi się pomysł z zewnętrzna tablicą, spróbowałem ale znikło wszystko (znaczy imieniny dzisiejsze i jutrzejsze 🙁

chyba, że cos poknociłem ,

Możliwe że cwd coś psuje. Zamiast include './imieniny_imiona.php' spróbuj include __DIR__ . '/imieniny_imiona.php'.

Czy plik imieniny_imiona.php jest w tym samym katalogu?

1

jest w tym samym katalogu i próbowałem po wykasowaniu "./" ale tez nie działało

zobaczę tę poprawkę z direm

0
Kopiuj
$nameDays = include __DIR__ . '/imieniny_imiona.php';
Kopiuj
$nameDays = include __DIR__  'imieniny_imiona.php';

w obu przypadkach kicha 🙁

0
ikp-php3 napisał(a):
Kopiuj
$nameDays = include __DIR__ . '/imieniny_imiona.php';

Idę o zakład że to przez Twoją starą wersję PHP 5.4.

Zamień function namesByNameDay($date): ?string { na function namesByNameDay($date) {

0

no i kicha 🙁

kombinowałem z direm bez diru zmieniałem ścieżkę i nic 🙁

stanąłem na tym:

Kopiuj
function namesByNameDay($date) {

{
    $nameDays = include __DIR__  'imieniny_imiona.php';
    $month = $date->format('n');
    $day = $date->format('j');
    if (array_key_exists($month, $nameDays) && array_key_exists($day, $nameDays[$month])) {
        if ($nameDays[$month][$day] !== '') {
            return $nameDays[$month][$day];
        }
    }
    return null;
}
0
ikp-php3 napisał(a):

stanąłem na tym:

Kopiuj
function namesByNameDay($date) {
{
    $nameDays = include __DIR__  'imieniny_imiona.php';
}

To na pewno nie zadziała.

Spróbuj __DIR__ . '/imieniny_imiona.php';.

Swoją drogą - zobaczyłbyś pewnie bład PHP, który pozwoliłby Ci samemu znelźć przyczynę błędu, ale korzystasz z readfile(), a on za pewne wycisza Ci wszystkie błędy - więc jak coś jest nie tak, to tego nie widzisz.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.