Połączenie z bazą i błędy w składni [Xampp, phpmyadmin]

0

Witam, mam problem z bazą danych i nie jestem w stanie sam sobie z tym poradzić. Uporałem się już z wieloma błędami jak braki " . " itp (ogólnie w składni) ale po prostu mi nie idzie. Wiem że jak ktoś doświadczony na to popatrzy to się załamie no ale już nie wiem co robić. Ostatnio Pani nam tłumaczyło tą funkcję explode i wiem tyle że rozdziela 2 słowa do osobnych komórek, jakby ktoś przy okazji mógłby jakoś mi to szerzej wytłumaczyć, byłbym wdzięczny.
Niżej kod który udało mi się napisać, a jeszcze niżej zdjęcie z samej "strony" :

<meta charset="utf-8">
<head>
<link rel="stylesheet" href="styl1.css">
</head>
<body>
<form action="#" method="POST">
Podaj imie i nazwisko: <input type="text" name="imie" /></br>
Imię z bierzmowania: (całe dużymi literami) <input type="text" name="imie_bierzmowanie" /></br>
Data i miejsce urodzenia: <input type="text" name="data_urodzenia" /></br>
Data i miejsce chrztu: (dzień, miesiąc, rok, parafia, miejscowość)<input type="text" name="data_chrztu" /></br>
Nr aktu chrztu: (nr/rok)<input type="text" name="nr_aktu" /></br>
Data i miejsce bierzmowania: (dzień, miesiąc, rok, parafia, miejscowość)<input type="text" name="data_bierzmowania" /></br>
Szafarz sakramentu: (imię i nazwisko) <input type="text" name="szafarz" /></br>
Świadek bierzmowania: (imię i nazwisko)<input type="text" name="swiadek" /></br>
Nr z księgi bierzmowanych: (nr/rok)<input type="text" name="nr_ksiegi" /></br>
<input type='submit' name='dodaj'>DODAJ<br>
</form>
<?php
$pol = mysqli_connect('localhost', 'root', '', 'bierzmowani');
$c1=explode(" ",$_POST['imie_nazwisko']);
$c2=explode(" ",$_POST['urodzenie']);
$c3=explode(" ",$_POST['chrzest']);
$d_ch=$c3[2]."-".$c3[1]."-".$c3[0];
$c4=explode(" ",$_POST['bierzmowanie']);
$d_ch=$c4[2]."-".$c4[1]."-".$c4[0];
$wynik_zapytania=mysqli_query($pol,"Insert INTO bierzmowany(`imie`,`nazwisko`,`imie_z_bierzmowania`,`miejsce_urodzenia`,data_urodzenia,data_chrztu,id_parafii_chrztu,nr_aktu_chrztu,data_bierzmowania,id_parafii_bierzmowania,szafarz,swiadek,data_wpisu) VALUES('".$cl1[0]."','".$_POST['imie_bierz']."','".$c2[1]."','".$c2[0]."','".$d_ch."',".$c3[3].",'".$_POST['nr_chrztu']."','".$b."'.".$c4[3].",'".$_POST['szafarz']."','".$_POST['swiadek']."','2020-11-20')");
?>
</body>
</html>

screenshot-20201123011908.png

AKTUALIZACJA:
screenshot-20201123024313.png

6

expolde tworzy tablicę, a przyjmuje jako parametry delimiter(coś po czym chcesz podzielić dany stringi) oraz sam stringi(literał).
Jeśli chcesz się odnieść potem do takiej tablicy musisz użyć potrzebnego klucza.
Np.

$array = explode (' ', 'abcd xyz');
echo $array[0]; //abcd
echo $array[1];// xyz
echo $array[5]; // klucz o indeksie 5 nie istnieje i mamy błąd.

Komunikat o błędzie mówi, że odnosisz gdzieś do klucza który nie istnieje. Czyli masz coś podzielonego inaczej niż myślisz lub w ogóle.

Trochę źle do tego podchodzisz. Po co dajesz pole imię i nazwisko skoro potem chcesz to rozdzielać? Daj oddzielne pola na imię i nazwisko. Co jeśli ktoś się będzie nazywał 'Jan Maria Rokita'?
To samo tyczy się dat. Dawaj np. oddzielne pola na rok, miesiąc, dzień.

0

@jurek1980: Bardzo dziękuję, problem rozwiązany :D

1 użytkowników online, w tym zalogowanych: 0, gości: 1