Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP] Porównywanie danych i wyświetlanie wartości
Kicu
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 10.10.2009

Ostrzeżenie: (0%)
-----


Witam

Mój problem wygląda następująco:

Tworzę pewien mały projekcik na studia, który polega na rezerwacji miejsc hotelowych. Sprawa wygląda tak, że w bazie, w tabeli hotel_pokoj, mam wprowadzone różne pokoje. Pola jakie tam mam to: nr_pokoju, liczba_miejsc, liczba_lozek, lazienka, media, balkon.
Osoba która wchodzi na stronę, ma do dyspozycji formularz, w którym po kolei wybiera liczbę miejsc, liczbę łóżek, czy ma być łazienka, media albo balkon.

Chciałbym teraz, aby po wypełnieniu takiego formularza, system sprawdzał i przypisywał dla danej rezerwacji numer pokoju, czyli pobierał wartość z nr_pokoju, pod warunkiem że pozostałe pola są zgodne z tymi, które podał klient w formularzu.

Jest ktoś w stanie pomóc? Mam nadzieję że wszystko wyjaśniłem w miarę jasno (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Kicu
post
Post #2





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 10.10.2009

Ostrzeżenie: (0%)
-----


Pozwoliłem sobie powrócić jeszcze do tego tematu. Nie bardzo widzę sens zakładania nowego. Jeśli źle robię, to proszę mnie upomnieć (IMG:style_emoticons/default/smile.gif)

Najpierw przedstawię kod:

  1. <?php
  2. $imie = $_POST["imie"];
  3. $nazwisko = $_POST["nazwisko"];
  4. $adres = $_POST["adres"];
  5. $miejscowosc = $_POST["miejscowosc"];
  6. $telefon = $_POST["telefon"];
  7. $email = $_POST["email"];
  8. $id_apartamentu = $_POST["id_apartamentu"];
  9. $data_przyjazdu = $_POST["data_przyjazdu"];
  10. $data_wyjazdu = $_POST["data_wyjazdu"];
  11. $ilosc_lozek = $_POST["ilosc_lozek"];
  12. $ilosc_miejsc = $_POST["ilosc_miejsc"];
  13. $sniadanie = $_POST["sniadanie"];
  14.  
  15. if ((!$imie) || (!$nazwisko) || (!$adres) || (!$miejscowosc) || (!$telefon) || (!$email) || (!$data_przyjazdu) || (!$data_wyjazdu) || (!$id_apartamentu))
  16. {
  17. echo "Nie wypełniono wymaganych pól. Proszę spróbować ponownie.<br>";
  18. }
  19.  
  20.  
  21. $base=mysqli_connect('localhost', 'nazwa', 'pass','baza');
  22.  
  23. $base->query('SET character_set_connection=utf8');
  24. $base->query('SET character_set_client=utf8');
  25. $base->query('SET character_set_results=utf8');
  26.  
  27. $query="Select cena From hotel_apartament where id_apartamentu='$id_apartamentu'";
  28. $result=mysqli_query($base,$query);
  29.  
  30. $sql = " insert into hotel_klient set imie='$imie', nazwisko='$nazwisko', adres='$adres', miejscowosc='$miejscowosc',telefon='$telefon', email='$email'";
  31.  
  32.  
  33.  
  34. $row=mysqli_fetch_assoc($result);
  35. $wynik=$row['cena'];
  36.  
  37.  
  38. $result = @mysqli_query($base, $sql)
  39. or die("Zapytanie chybione");
  40.  
  41.  
  42. $rezerwacja = ((strtotime($data_wyjazdu)-strtotime($data_przyjazdu))/86400);
  43.  
  44. if($sniadanie == 'tak')
  45.  
  46. {
  47. $opcja = '10' * $rezerwacja;
  48. }
  49. $zaplata = $rezerwacja * $wynik + $opcja;
  50.  
  51.  
  52. $sql_1 = " insert into hotel_rezerwacja set id_apartamentu='$id_apartamentu', id_goscia='$goscid', data_przyjazdu='$data_przyjazdu', data_wyjazdu='$data_wyjazdu', sniadanie='$sniadanie', kwota='$zaplata'";
  53.  
  54. $exec = mysqli_query($base, $sql_1) or die(mysql_error());
  55.  
  56.  
  57. if ($result)
  58. {
  59. echo $ostatnie_id;
  60.  
  61. echo '<br><br><br><center><font class="powiadomienia">Rezerwacja została dodana pomyślnie. Dziękujemy.</font>';
  62. echo '<br><br><font class="powiadomienia">Czas rezerwacji: ';
  63. echo $rezerwacja;
  64. echo ' dni. Kwota do zapłaty: ';
  65. echo $zaplata;
  66. echo ' zł. <br><br><br> <a class="powiadomieniaa" href="rezerwacja.php">dodaj kolejną rezerwację</a> </font></center>';
  67. }
  68.  
  69. mysqli_close($base);
  70.  
  71. ?>


Jak widać, skrypt pobiera z formularza kilka wartości, po czym wprowadza niektóre dane do tabeli hotel_klient. Tutaj wszystko działa okej. Jednak chcę, aby zarazem wprowadzało mi wybrane wartości do tabeli hotel_rezerwacja i tutaj pojawia się problem.
Jak widać, dla id_goscia, powinno wprowadzać wartość '$goscid', której obecnie nie ma. Ta wartość powinna równać się ID gościa, który został chwilę wcześniej wprowadzony. Nie wiem jednak jak wyciągnąć dopiero co wprowadzone ID.
W tabeli hotel_klient, 'id_goscia' jest auto increment, oraz utworzona jest relacja między tą tabelą, a tabelą hotel_rezerwacja.


----------------------------------

EDIT:

To forum mi chyba szczęście przynosi, bo szukam informacji godzinami, znaleźć nie mogę, a w ciągu kilkunastu minut od napisania posta, znajdę to czego mi trzeba (IMG:style_emoticons/default/smile.gif)

W ten oto sposób balany to rozwiązałem:
  1. $goscid = mysqli_insert_id($base);


Ten post edytował Kicu 2.06.2010, 16:48:16
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 01:08