Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Praca z PHP + MYSQL
xenvera
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2014

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


Witajcie.

Mam do was kilka pytań związanych z PHP i MYSQL.

Chcę zrobić bazę danych Hotelu, czyli wszystkich klientów korzystających z wynajmu pokojów. Posiadam baze danych w której dodaję Imie, data przyjazdu itd idąc dalej nie wiem jak zrobić aby automatyczne skrypt liczył ilość dni ile dany klient przebywa w hotelu oraz mnożenie to przez kwotę noclegu (czyli. Przyjechałem 19.10.2014 do hotelu, 20.10.2014 opuszczam pokój czyli skrypt powinien odjąć(?) 20-19 = 1 * (koszt noclegu) = kwota zł.) Oraz aby wyświetlał wynik w tabeli.

Skrypt wygląda na razie tak:

  1. <?php
  2. require_once('config.php');
  3. include('index.php');
  4.  
  5. $ilosc = mysql_query("SELECT * FROM `klient`");
  6. $ilosc_klientow = mysql_num_rows($ilosc);
  7.  
  8. if($ilosc_klientow > 0)
  9. {
  10. echo '<center><font size="5">Aktualnie jest <b><font color="GREEN">'.$ilosc_klientow.'</font> </b>klientów!</font></center>';
  11. }
  12. else
  13. {
  14. echo '<center><font size="5">Aktualnie nie ma żadnych klientów!</font></center>';
  15. }
  16.  
  17. ///Dane szczegółowe
  18.  
  19. $dane = "SELECT id,imie,lozko,ilosc_dni,dzien, miesiac, rok ,data_dodania FROM `klient`";
  20. $a = 25;
  21. $wynik = mysql_query($dane);
  22. echo '<center><p>';
  23. echo '<table border="1" width="1000">';
  24. echo '<tr>';
  25. echo '<td bgcolor="orange">Identyfikator</td>';
  26. echo '<td bgcolor="orange">Imie</td>';
  27. echo '<td bgcolor="orange">Numer łóżka</td>';
  28. echo '<td bgcolor="orange">Przyjechał dnia';
  29. echo '<td bgcolor="orange">Do zapłaty</td>';
  30. echo '<td bgcolor="orange">Przenieś do archiwum!</td>';
  31. echo '</tr>';
  32.  
  33. while ($row = mysql_fetch_row($wynik))
  34. {
  35. echo '</tr>';
  36. echo '<td>'.$row[0].'</td>';
  37. echo '<td>'.$row[1].'</td>';
  38. echo '<td>'.$row[2].'</td>';
  39. echo '<td>'.$row[4].' '.$row[5].' '.$row[6].'</td>'; ///data
  40. echo '<td>KWOTA zł</td>';
  41. echo '<td><center><input type="submit" name="przenies" value="Przenieś!"></center></td>';
  42.  
  43. }
  44. echo '</table><br>';
  45. echo '<table border="1" width="600">';
  46. echo '<tr>';
  47. echo '<td>Suma</td>';
  48. echo '<td> zł</td>';
  49. echo '</table>';
  50.  
  51.  
  52. ?>






I co nikt nie wie jak to zrobić ? :<
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
xenvera
post
Post #2





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 4.03.2014

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


Mam problem ze skryptem którym Updatuje w bazie danych kwotę jaką zapłacił losowy Kowalski za nocleg:
(IMG:http://oi57.tinypic.com/3178klk.jpg)

Problem w tym, że zmienna obliczająca dodaje mi cały czas tylko 1 wynik do bazy. Czyli jak odznaczam "ASDASD" i wykonuje że zapłacił to Updatuje mi kwotę 575 zł która należy do "123123123~".

//W postach wyżej nospor podpowiadał mi co mam zrobić, jednak na prawdę próbowałem i nie wyszło, szukałem przykładów ale też cieżko znaleźć coś podobnego.

  1. while ($row = mysql_fetch_array($wynik))
  2. {
  3. echo '<tr>';
  4. echo ''; //Tutaj było ID
  5. echo '<td>'.$row['imie'].'</td>';
  6. echo '<td>'.$row['lozko'].'</td>';
  7. echo ''; // tutaj bylo dzien miesiac rok
  8. echo '<td>'.$row['data_dodania'].'</td>';
  9. $data_dodania = $row['data_dodania'];
  10. $date1 = strtotime($data_dodania); ///Data dodania mysql
  11. $date2 = time(); ///Aktualny czas
  12.  
  13. $subTime = $date2 - $date1; ///Obliczenie ilosc dni
  14. $y = ($subTime/(60*60*24*365));
  15. $m = ($subTime/60)%60;
  16. $d = ($subTime/(60*60*24))%365; ///
  17. $koszt = 25;
  18. $oblicz = $d * $koszt;
  19. var_dump($oblicz);
  20.  
  21. echo '<td><center>'.$oblicz.' zł</center></td>';
  22.  
  23.  
  24. if($row['kwota'] > 0)
  25. {
  26.  
  27. echo '<td><center><input type="checkbox" name="zaplacil[]" value="" disabled="disabled"/></center></td>';
  28. }
  29.  
  30. else
  31. {
  32. echo '<td><center><input type="checkbox" name="zaplacil[]" value="'.$row['id'].'"/></center></td>';
  33. }
  34.  
  35. if($row['kwota'] == 0)
  36. {
  37. echo '<td><center><b><font color="RED">NIEZAPŁACONO!</b></font></center></td>';
  38. }
  39. else
  40. {
  41. echo '<td><center><b><font color="GREEN">ZAPŁACONO!</b></font></center></td>';
  42. }
  43.  
  44. echo '<td><center><input type="checkbox" name="delete[]" value="'.$row['id'].'"></center></td>';
  45. echo '<td><a href="klienci.php?dane=edytuj&id='.$row['id'].'"/>Edytuj</a></td>';
  46. echo '</tr>';
  47.  
  48. }
  49. echo '</table><br>';
  50. echo '<center><input type="submit" value="Wykonaj"</center>';
  51. echo '</form>';
  52.  
  53. ///Zaplata
  54. if (isset($_GET['zaplacil']))
  55. {
  56. $zaplacil = $_GET['zaplacil'];
  57.  
  58. var_dump($oblicz);
  59. $kwotadb = mysql_query('UPDATE `klienci` SET kwota = '.$oblicz.' WHERE id IN ('.implode(',', $_GET['zaplacil']).')');
  60.  
  61. if($kwotadb)
  62. {
  63. echo 'ZAPLACIŁ';
  64. }
  65. else
  66. {
  67. echo 'BLAD';
  68. }
  69. }


f10

f11
Go to the top of the page
+Quote Post

Posty w temacie
- xenvera   Praca z PHP + MYSQL   22.10.2014, 20:25:13
- - Dejmien_85   Panowie i Panie, ogłaszam wszem i wobec, że jeśli ...   22.10.2014, 21:03:23
- - ShaggyAG   http://us1.php.net/manual/pl/datetime.diff.php   22.10.2014, 22:53:48
- - xenvera   Cytat(Dejmien_85 @ 22.10.2014, 22:03...   23.10.2014, 09:48:27
- - Boshi   To nie atak, to porada. Choć wg mnie powiedziec p...   23.10.2014, 11:05:07
- - xenvera   Ostatnie pytanie na szybko związane ze skryptem, c...   23.10.2014, 18:09:20
- - nospor   Bo nigdzie przed UPDATE nie wyliczasz $oblicz...   23.10.2014, 18:20:50
|- - xenvera   Cytat(nospor @ 23.10.2014, 19:20:50 )...   23.10.2014, 21:24:48
- - Boshi   A jaką wartość ma zmienna koszt? [PHP] pobierz, p...   23.10.2014, 22:05:08
- - xenvera   [PHP] pobierz, plaintext $data_dodania = $row...   23.10.2014, 22:20:24
- - nospor   CytatTo jest wszystko w jednym pliku....Ok.... Po ...   24.10.2014, 06:22:56
- - xenvera   Powiem tak, var_dump zawiera faktycznie wyniki co ...   24.10.2014, 14:52:24
- - nospor   No i zgadza sie. Oblicz robisz z listy a masz robi...   24.10.2014, 17:53:38
- - xenvera   Nie no, nie mam pojęcia ani nawet pomysłu jak to z...   24.10.2014, 19:33:00
- - ShaggyAG   Liczysz oblicz w petli dlatego zmienna pamięta ost...   25.10.2014, 06:21:46
- - xenvera   Gdzie mam wcisnąć te obliczenia, skoro do każdego ...   26.10.2014, 21:31:24
- - ShaggyAG   W bazie też musisz mieć jakieś pole tyu "zapł...   27.10.2014, 15:51:27
- - xenvera   No z ajaxem generalnie jeszcze nic nie zaczynałem,...   23.11.2014, 21:04:51
- - Turson   Zadaj po ludzku pytanie   23.11.2014, 21:31:41
- - xenvera   Mam problem ze skryptem którym Updatuje w bazie da...   30.11.2014, 17:45:28
- - borabora   masz pętlę, w niej obliczasz zmienną $oblicz....   1.12.2014, 01:07:08
- - xenvera   Udało mi się, jednak został mi ostatni problem. Ki...   1.12.2014, 21:15:34
- - borabora   bo masz takie zapytanie: [SQL] pobierz, plaintext ...   1.12.2014, 22:17:26
- - xenvera   foreach ma być w updajcie ? Bo z tego co widze to ...   1.12.2014, 22:26:10
- - borabora   nie. update w foreach(){tutaj}   1.12.2014, 23:19:05
- - xenvera   foreach(update ....); tak ?   2.12.2014, 00:27:29


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: 28.12.2025 - 14:34