Witam wszystkich mam taki problem.
Rejestracja przebiega dobrze zapis tylko do jednej tabeli a do drugiej niestety nie jest mały problem.
Przy zapisie danych wyskakuje w przeglądarce powyżej nagłówka takie coś
"Object id #2".Co on może oznaczać?
Przypuszczam skrypt wysypuje sie przy sprawdzeniu, czy podany login jest juz zajęty, ale pewien nie jestem.
Oto funkcja odpowiadająca za rejestracje
<?php
function rejestruj($login, $email, $haslo, $nazwisko, $imie, $pesel, $data_ur, $miejsce_ur, $miejsce_zam, $ulica, $nr_budynku, $nr_lok, $kod_pocztowy, $miejscowosc, $telefon)
// zarejestrowanie nowej osoby w bazie danych
// zwraca true lub komunikat o błędzie
{
// połączenie z bazą danych
$lacz = lacz_bd();
// sprawdzenie, czy nazwa użytkownika nie powtarza się
$wynik = $lacz->query("select * from uzytkownik where login='$login'");
if (!$wynik)
throw new Exception('Wykonanie zapytania nie powiodło się.');
if ($lacz->num_rows>0)
throw new Exception('Nazwa użytkownika zajęta — proszę wrócić i wybrać inną.');
//sprawdzenie czy adres email sie powtarza
$wynik = $lacz->query("select * from uzytkownik where email='$email'");
if (!$wynik)
throw new Exception('Wykonanie zapytania nie powiodło się.');
if ($lacz->num_rows>0)
throw new Exception('Adres e -mail jest już zajęty — proszę wrócić i wybrać inny.');
//sprawdzenie czy numer pesel sie nie powtarza
$wynik = $lacz->query("select * from pacjent where pesel='$pesel'");
if (!$wynik)
throw new Exception('Wykonanie zapytania nie powiodło się.');
if ($lacz->num_rows>0)
throw new Exception('Numer pesel sie powtarza — proszę wrócić i wybrać inny.');
$data_rejestracji = date('Y-m-d H:i:s');
// utworzenie daty rejestracji
$data_log = $data_rejestracji;
//echo $login, $haslo, $email, $data_log;
$wynik = $lacz->query("insert into uzytkownik values (NULL, '$login', sha1('$haslo'), '$email', '$data_log')");
if (!$wynik)
throw new Exception('Rejestracja w bazie danych niemożliwa.. — proszę spróbować później.');
$wynik1 = $lacz->query("select iduzytkownika from uzytkownik where login='$login'");
$wynik = $lacz->query("insert into pacjent values (NULL, '$wynik1', '$nazwisko', '$imie', '$pesel', '$data_ur', '$miejsce_ur', '$data_rejestracji', '$data_rejestracji', '$miejsce_zam', '$ulica', '$nr_budynku', '$nr_lok', '$kod_pocztowy', '$miejscowosc', '$telefon')");
if (!$wynik)
throw new Exception('Rejestracja w bazie danych niemożliwa......... — proszę spróbować później.');
return true;
}
?>
Poza tą funkcją wszystko działa.Kwestia tylko czy takowy sposób wprowadzenia danych do dwóch tabel jest prawidłowy??Z góry dzięki za fatyke pozdrawiam.