Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] System obsługi sprzedaży, Sposób na napisanie prostego systemu obsługi sprzedaży
dsinfo
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 2
Dołączył: 30.03.2006

Ostrzeżenie: (10%)
X----


Piszę pewną aplikację w języku PHP i mam mały, a właściwie to ogromny problem.
Otóż piszę aplikację prostej obsługi sprzedaży. Potrzebuję 5 pól. W jedno takie
pole wpisuję kod produktu i obok pojawia mi się jego kod,nazwa i cena. Sposób w
jaki można wyświetlić wcześniej wymienione dane o odpowiednim produkcie, po uprzednim
wpisaniu jego kodu - mam już rozwiązany. Ale, nie do końca. W poniższych listingach przedstawiam
aktualny stan kodu. Mój problem polega na tym, że tych pól jak już wspomniałem ma być
aż 5. I tu zaczyna się poważny problem. Otóż jak wpiszemy do dowolnego pola kod produktu
(np. "001") to wyświetlą nam się o nim dane, natomiast gdy do drugiego pola wpiszemy
następny kod produktu (np. "002") - to poprzednie dane znikną. I tak dalej z kolejnymi polami.
W tym właśnie miejscu tkwi mój problem. A, więc cóż mam uczynić, aby wcześniej wyświetlone dane
nie znikały mi?

Listingi:

d.php - baza danych o produktach:

  1. <?php
  2. $art['001']['nazwa']='Towar A';
  3. $art['001']['cena']='30';
  4. $art['002']['nazwa']='Towar B';
  5. $art['002']['cena']='40';
  6. $art['003']['nazwa']='Towar C';
  7. $art['003']['cena']='50';
  8. ?>


i.php - formularz numer jeden:


  1. <table border="0" width="616"><tr><td width="210">
  2. <form action="ii.php" method="get">
  3. Litera: <input type="text" name="a" />
  4. <input type="submit" value="Wyslij" />
  5. </form>
  6. </td><td width="396"><?php
  7.  
  8. include ("d.php");
  9.  
  10.  
  11. $a=$_GET['a'];
  12.  
  13.  
  14. if (isset($art[$a])) echo ('<table border=0><tr><td width=119>'.$a.'</td><td width=208>'.$art[$a]['nazwa'].'</td><td width=55>'.$art[$a]['cena'].'</td></tr></table>');
  15.  
  16. ?></td></tr></table>




v.php - formularz numer dwa:


  1. <table border="0" width="616"><tr><td width="210">
  2. <form action="ii.php" method="get">
  3. Litera: <input type="text" name="b" />
  4. <input type="submit" value="Wyslij" />
  5. </form>
  6. </td><td width="396"><?php
  7.  
  8. include ("d.php");
  9.  
  10. $b=$_GET['b'];
  11.  
  12.  
  13.  
  14. if (isset($art[$b])) echo ('<table border=0><tr><td width=119>'.$b.'</td><td width=208>'.$art[$b]['nazwa'].'</td><td width=55>'.$art[$b]['cena'].'</td></tr></table>');
  15. $cena=$art[$b]['cena'];
  16. echo ($cena);
  17.  
  18. ?></td></tr></table>



ii.php - plik główny:

  1. <?php
  2.  
  3. include ("i.php");
  4. echo ("<br><br><br><br>");
  5. include ("v.php");
  6.  
  7. ?>


Ten post edytował dsinfo 11.08.2008, 11:57:10
Powód edycji: Dodałem tag. /webdicepl
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dsinfo
post
Post #2





Grupa: Zarejestrowani
Postów: 20
Pomógł: 2
Dołączył: 30.03.2006

Ostrzeżenie: (10%)
X----


Mam jeszcze jedno pytanie.
Otóż czy dało by się jeszcze dodać możliwość sprawdzania ilości sprzedanego towaru oraz ilości towaru jaka pozostała?
Chodzi oto, że w bazie danych wszystkich artykułów mam ilość towaru (spis artykułów) jaka jest dostępna (plik "d.php")
w pliku "baza.txt", mam zapisywane informacje o aktualnie sprzedanych artykułach. Teraz warto było by, aby można było
zobaczyć jaką liczbę sprzedano "Towaru A","Towaru B","Towaru C', (...) oraz ile pozostało ich możliwych do sprzdania,
tzn. ile pozostało ich na stanie.

Kod pliku d.php:

  1. <?php
  2. $art['001']['nazwa']='Towar A';
  3. $art['001']['cena']='30';
  4. $art['001']['netto']='15';
  5. $art['001']['ilosc']='5';
  6. $art['002']['nazwa']='Towar B';
  7. $art['002']['cena']='40';
  8. $art['002']['netto']='2.50';
  9. $art['002']['ilosc']='3';
  10. $art['003']['nazwa']='Towar C';
  11. $art['003']['cena']='50';
  12. $art['003']['netto']='10';
  13. $art['003']['ilosc']='100';
  14. $art['004']['nazwa']='Towar D';
  15. $art['004']['cena']='5.50';
  16. $art['004']['netto']='1,30';
  17. $art['004']['ilosc']='99';
  18. ?>


Do tego mamy teraz prezentację bazy wszystkich artykułów - plik lista.php:

  1. <table style="width:90%;border:1px solid green;" align="center"><tr><td><b><font size="1" face="Arial">
  2. Kod produktu</font></b></td><td><b><font size="1" face="Arial">Nazwa produktu</font></b></td><td><b>
  3. <font size="1" face="Arial">Cena brutto produktu</font></b></td><td><b><font size="1" face="Arial">
  4. Cena netto produktu</font></b></td><td><b><font size="1" face="Arial">Ilość</font></b></td></tr>
  5. <?php
  6.  
  7.  include('d.php');
  8.  
  9. foreach($art as $k=>$v)
  10. {
  11.  echo('<tr><td bgcolor=#99CCFF><center><b><font size=2 face=Arial>'.$k.'</font></b></center></td>
  12. <td bgcolor=#3399FF><center><b><font size=2 face=Arial>'.$v['nazwa'].'</font></b></center></td>
  13. <td bgcolor=#0099FF><center><b><font size=2 face=Arial>'.$v['cena'].'</font></b></center></td>
  14. <td bgcolor=#6699FF><center><b><font size=2 face=Arial>'.$v['netto'].'</font></b></center></td>
  15. <td bgcolor=#9966FF><center><b><font size=2 face=Arial>'.$v['ilosc'].'</font></b></center></td></tr>');
  16. }
  17. ?>
  18. </table>


A, także prezentację graficzną listy sprzedanych produktów - plik lps.php:

  1. <p><b>Lista produktów sprzedanych</b></p>
  2.  
  3.  
  4.  
  5. <table style="width:90%;border:1px solid green;" align="center"><tr><td><b><font size="1" face="Arial">
  6. Kod produktu</font></b></td><td><b><font size="1" face="Arial">Nazwa produktu</font></b></td><td><b>
  7. <font size="1" face="Arial">Cena brutto produktu</font></b></td><td>
  8. <b><font face="Arial" size="1">Data sprzedaży</font></b></td><td><b><font face="Arial" size="1">
  9. Czas sprzedaży</font></b></td></tr>
  10.  
  11. <?php
  12. $plik = "baza.txt";
  13. $dane = file($plik); /* pobieram dane z pliku i zapisuje do tablicy (linia = rekord) */
  14.  
  15. for($i=0;$i<count($dane);$i++) { /* przeszukuję tablicę */
  16. list($kod[$i], $nazwa[$i], $cena[$i], $data[$i], $czas[$i]) = explode("|", $dane[$i]);
  17.  /* dziele linię na tablicę i zapisuje dane do odpowiednich zmienncyh */
  18. }
  19.  
  20.  
  21.  
  22. for($i=0;$i<count($kod);$i++) /* przeszukuję tablicę */ 
  23.  echo ('<tr><td bgcolor=#99CCFF><center><b><font size=2 face=Arial>'.$kod[$i].'</font></b></center></td>
  24. <td bgcolor=#3399FF><center><b><font size=2 face=Arial>'.$nazwa[$i].'</font></b></center></td><td bgcolor=#0099FF>
  25. <center><b><font size=2 face=Arial>'.$cena[$i].'</font></b></center></td><td bgcolor=#6699FF><center><b>
  26. <font size=2 face=Arial>'.$data[$i].'</font></b></center></td><td bgcolor=#9966FF><center><b><font size=2 face=Arial>
  27. '.$czas[$i].'</font></b></center></td></tr>');
  28.  /* wyświetlam dane */
  29. ?></table>


Dołączam przykładowy plik - baza.txt:

  1. <?php
  2. 001|Towar A|30|13.08.2008|14:25:06
  3. 002|Towar B|40|13.08.2008|14:25:06
  4. 003|Towar C|50|13.08.2008|14:25:06
  5. 004|przykład ceny z groszami|23.78|13.08.2008|14:25:06
  6. 001|Towar A|30|13.08.2008|14:25:06
  7. 001|Towar A|30|13.08.2008|14:32:54
  8. 003|Towar C|50|13.08.2008|14:32:54
  9. 002|Towar B|40|13.08.2008|14:32:54
  10. 004|Towar D|5.50|13.08.2008|14:32:54
  11. 001|Towar A|30|13.08.2008|14:32:54
  12. 001|Towar A|30|13.08.2008|15:51:15
  13. 002|Towar B|40|13.08.2008|15:51:15
  14. 004|Towar D|5.50|13.08.2008|15:51:15
  15. 004|Towar D|5.50|13.08.2008|15:51:15
  16. 004|Towar D|5.50|13.08.2008|15:51:15
  17. 001|Towar A|30|13.08.2008|16:14:19
  18. 002|Towar B|40|13.08.2008|16:14:19
  19. 003|Towar C|50|13.08.2008|16:14:19
  20. 004|Towar D|5.50|13.08.2008|16:14:19
  21. 004|Towar D|5.50|13.08.2008|16:14:19
  22. 001|Towar A|30|13.08.2008|16:27:18
  23. 002|Towar B|40|13.08.2008|16:27:18
  24. 001|Towar A|30|13.08.2008|16:30:19
  25. 001|Towar A|30|13.08.2008|16:42:31
  26. ?>


.

I teraz chcę w pliku lista.php dodać kolumnę "Ilość sprzedanych artykułów" i "Ilość pozostałych artykułów".
W tym pliku/stronie mamy kolumnę z napisem "Ilość" - jest to tak naprawdę ilość początkowa, czyli ilość
danego artykułu jaka była na początku (zakupiona np. przez sklep). Tutaj akurat zapomiałem tego dopisać.

Pomocą będzie poniższy przykładowy rysunek (zmodyfikowany plik lista.php):

http://www.otofotki.pl/img3/obrazki/oqdt1611433822y.jpg

Czyli na koniec zwieczając ten cały długi i zarazem wyczerpujący post - chcę uzyskać możliwość wyświetlania ile pozostało mi "Towaru A","Towaru B",(...) oraz ile zostało sprzedane - "Towaru A", "Towaru B", itd.

Ten post edytował dsinfo 13.08.2008, 22:17:02
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 12.10.2025 - 20:48