Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Sprawdzanie stanu magazynu
-Misior-
post 8.06.2006, 10:07:56
Post #1





Goście







witam serdecznie,
jestem nowym uzytkownikiem forum, dlatego zaczne moj temat od przedstawienia sie! Jestem Misior i dopiero zaczynam przygode z php (a raczej jestem do tego zmuszony - uczelnia)!

Bardzo prosze o pomoc! Na zaliczenie mam wykonac projekt magazynu papierosow! Moim problemem jest sprawdzanie stanu magazynu (co jeszcze mi dziala) a nastepnie po wpisaniu przez uzytkownika ilosci jaka potrzebuje - na sprawdzeniu czy taka ilosc znajduje sie w magazynie!

Ponizej przedstawiam fragment kodu:

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

<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
<TITLE>Czytanie z bazy danych</TITLE>
</HEAD>
<BODY>

<FORM ACTION="zam.php" METHOD="GET">

Wybierz fajki:
<select name="nazwa">
<option value="0">Wybierz</option>
<option value="1">L&M</option>
<option value="2">Marlboro</option>
<option value="3">L&M light</option>
</select>

<input type="text" name="ilosc">

<input type="submit" value="Zastosuj">
</CENTER>
<br>

</FORM>

<?
if(($_GET['nazwa']) == 1 && $_get['ilosc'])
{


$conn= mysql_connect("localhost","root","krasnal");
mysql_select_db("hurtownia");
$wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=2");

while($rekord = mysql_fetch_assoc($wynik)){

$ilisc_dostepna = $rekord['ilisc_dostepna'];
print "Magazyn: $ilisc_dostepna<br>";


if ($ilisc_dostepna > ($_get['ilosc'])){

print "Aktualnie w magazynie mamy tyle fajek";
}
else{
print "Sorrki ale aktualnie nie mamy tylu sztuk na stanie";

}
}
}






?>
</body>
</html>

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

Samo sprawdzenie jaki jest stan magazynu z okreslonej kategorii dziala! Natomiast jesli dodam porownanie aktualnego stanu z iloscia sztuk jaka potrzebuje uzytkownik nie dziala - nic sie nie dzieje!

Z gory dziekuje za wszystkie odpowiedzi!

Pozdrawiam
Go to the top of the page
+Quote Post
nospor
post 8.06.2006, 10:11:23
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




nie $_get a $_GET.
  1. <?php
  2. if ($ilisc_dostepna > $_GET['ilosc']){
  3. ?>


Prosze uzywac bbcode do kodu
Prosze uzywac znacznikow w temacie zgodnie z zasadami forum Przedszkole

Witamy smile.gif

edit: popraw wszedzie te $_get bo masz w kliku miejscach


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
-Misior-
post 8.06.2006, 10:19:23
Post #3





Goście







Dziekuje bardzo za odpowiedz! Nastepnym razem dostosuje sie smile.gif

Pozdrawiam
Go to the top of the page
+Quote Post
-Misior-
post 9.06.2006, 08:43:27
Post #4





Goście







mam kolejny problem zwiazany z ta sama aplikacja! Otoz, teraz dziala mi sprawdzenie czy wymagana ilosc znajduje sie na magazynie! Chce dorobic do tego dodawanie zamowienia do bazy! Wiec, moim zdaniem po sprawdzeniu czy w magazynie jest tyle towaru ile klient potrzebuje powinno sie dodac zamowienie do bazy! Jednak nie wiem gdzie wstawic inserta i czy jest dobrze zbudowany!

  1. <?
  2. if(($_GET['nazwa']) == 1 && $_GET['ilosc'])
  3. {
  4.  
  5.  
  6. $conn= mysql_connect("localhost","root","krasnal"); 
  7. mysql_select_db("hurtownia"); 
  8. $wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=2");
  9.  
  10. while($rekord = mysql_fetch_assoc($wynik)){
  11.  
  12. $ilisc_dostepna = $rekord['ilisc_dostepna'];
  13. print "Magazyn: $ilisc_dostepna<br>";
  14.  
  15.  
  16. if ($ilisc_dostepna > ($_GET['ilosc'])){
  17.  
  18. // po sprawdzeniu stanu magazynu, nastepuje dodanie danych do bazy (powinno dodac, ale nie dziala!
  19. if ($_GET_['id'] && $_GET['faktura'] && $_GET['transport']){
  20. $q2 = "insert into magazyn values ('".$_GET['id']."','".$_GET['nazwa']."''".$_GET['ilosc']."''".$_GET['faktura']."''".$_GET['transport']."');
  21. $wynik1 = mysql_query($q2);
  22. }
  23. }
  24. }
  25.  
  26.  
  27. if(($_GET['nazwa']) == 2 && $_GET['ilosc'])
  28. {
  29.  
  30. $conn= mysql_connect("localhost","root","krasnal"); 
  31. mysql_select_db("hurtownia"); 
  32. $wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=3");
  33.  
  34. while($rekord = mysql_fetch_assoc($wynik)){
  35.  
  36. $ilisc_dostepna = $rekord['ilisc_dostepna'];
  37. print "Magazyn: $ilisc_dostepna<br>";
  38.  
  39.  
  40. if ($ilisc_dostepna > ($_GET['ilosc'])){
  41.  
  42. print "Aktualnie w magazynie mamy tyle fajek";
  43. }
  44. else{
  45. print "Sorrki ale aktualnie nie mamy tylu sztuk na stanie";
  46.  
  47. }
  48. }
  49. }
  50.  
  51. if(($_GET['nazwa']) == 3 && $_GET['ilosc'])
  52. {
  53.  
  54. $conn= mysql_connect("localhost","root","krasnal"); 
  55. mysql_select_db("hurtownia"); 
  56. $wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=1");
  57.  
  58. while($rekord = mysql_fetch_assoc($wynik)){
  59.  
  60. $ilisc_dostepna = $rekord['ilisc_dostepna'];
  61. print "Magazyn: $ilisc_dostepna<br>";
  62.  
  63.  
  64. if ($ilisc_dostepna > ($_GET['ilosc'])){
  65.  
  66. print "Aktualnie w magazynie mamy tyle fajek";
  67. }
  68. else{
  69. print "Sorrki ale aktualnie nie mamy tylu sztuk na stanie";
  70.  
  71. }
  72. }
  73. }
  74.  
  75.  
  76.  
  77.  
  78.  
  79. ?>


  1. <HEAD>
  2. <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-2">
  3. <TITLE>Czytanie z bazy danych</TITLE>
  4. </HEAD>
  5. <BODY>
  6.  
  7. <FORM ACTION="zam.php" METHOD="GET">
  8. <tr>
  9. <td>Wybierz Twoj numer id:</td>
  10. <td><select name="id">
  11. <option value="0">ID</option>
  12. <option value="1">1</option>
  13. <option value="2">2</option>
  14. <option value="3">3</option>
  15. <option value="4">4</option>
  16. </select></td><br>
  17. </tr>
  18. <tr>
  19. <td>Wybierz fajki:</td>
  20. <td>
  21. <select name="nazwa">
  22. <option value="0">Wybierz</option>
  23. <option value="1">L&M</option>
  24. <option value="2">Marlboro</option>
  25. <option value="3">L&M light</option>
  26. </select></td></tr><br>
  27. <tr>
  28. <td>Wpisz ilosc sztuk:</td>
  29. <td><input type="text" name="ilosc"></td></tr><br>
  30. <tr>
  31. <td>Faktura:</td>
  32. <td><INPUT TYPE="radio" NAME="faktura" VALUE="tak" checked> tak
  33. <INPUT TYPE="radio" NAME="faktura" VALUE="nie"> nie<br></td></tr>
  34. <tr>
  35.  
  36. <td>Dostawa</td>
  37. <td><select name="transport">
  38. <option value="0">Transport</option>
  39. <option value="1">nasz</option>
  40. <option value="2">wlasny</option>
  41. <option value="3">poczta</option>
  42. <option value="4">kurier</option>
  43. </select></td></tr><br>
  44.  
  45. <table>
  46. <input type="submit" value="Zastosuj">
  47. <input type="hidden" name="co" value="dodaj">
  48. <input type="submit" value="dodaj">
  49. </CENTER>
  50. <br>
  51.  
  52. </FORM>
  53. </body>
  54. </html>


Prosze o pomoc! Z gory dziekuje!
Go to the top of the page
+Quote Post
-Misior-
post 9.06.2006, 12:18:39
Post #5





Goście







jeszcze raz - poprawilem troche, ale dalej nie chce mi dopisac do bazy!

  1. <?
  2. if(($_GET['nazwa']) == 1 && $_GET['ilosc'])
  3. {
  4.  
  5.  
  6. $conn= mysql_connect("localhost","root","krasnal"); 
  7. mysql_select_db("hurtownia"); 
  8. $wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=2");
  9.  
  10. while($rekord = mysql_fetch_assoc($wynik)){
  11.  
  12. $ilisc_dostepna = $rekord['ilisc_dostepna'];
  13. print "Magazyn: $ilisc_dostepna<br>";
  14.  
  15.  
  16. if ($ilisc_dostepna > ($_GET['ilosc'])){
  17.  
  18. $query = "INSERT INTO zamowienie VALUES ('".$_GET['id_klienta']."','".$_GET['nazwa']."''".$_GET['ilosc']."''".$_GET['faktura']."''".$_GET['dostawa']."');";
  19. $wynik1 = mysql_query($query);
  20. }
  21. else{
  22. print "Niestety nie posiadamy takiej ilosci na stanie";
  23. }
  24. }
  25. }
  26.  
  27. ......................
  28.  
  29. ?>
Go to the top of the page
+Quote Post
-Gość-
post 9.06.2006, 16:58:17
Post #6





Goście







Zrob echo $wynik1 = mysql_query($query); i napisz co za blad daje MySQL.
Go to the top of the page
+Quote Post
Misior
post 9.06.2006, 23:18:06
Post #7





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.06.2006

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


Wstawilem to co napisales i niestetyt nie otrzymalem zadnego komunikatu bledu! Niby wszystko ok ale nie dopisuje danych do bazy danych!
Go to the top of the page
+Quote Post
kresh
post 9.06.2006, 23:39:58
Post #8





Grupa: Zarejestrowani
Postów: 99
Pomógł: 2
Dołączył: 8.11.2005
Skąd: Kraków

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


W zapytaniu INSERT nie dałeś przecinków po kolejnych wartościach!


--------------------
Programuj pod kątem interfejsu, nie implementacji
Gang of Four

michalbarys.pl
Go to the top of the page
+Quote Post
Misior
post 10.06.2006, 08:32:53
Post #9





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.06.2006

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


Wstawilem przecinki i dalej nic! Ja juz nie wiem co to moze byc! Czas mi ucieka a ja nie mam programu nha zaliczenie sad.gif

  1. <?php
  2. if ($ilisc_dostepna > ($_GET['ilosc'])){
  3.  
  4. $query = "INSERT INTO zamowienie VALUES ('".$_GET['id_klienta']."','".$_GET['nazwa']."','".$_GET['ilosc']."','".$_GET['faktura']."','".$_GET['dostawa']."');";
  5. $wynik1 = mysql_query($query);
  6. echo $wynik1 = mysql_query($query);
  7. }
  8. else{
  9. print "Niestety nie posiadamy takiej ilosci na stanie";
  10. }
  11. }
  12. }
  13. ?>
Go to the top of the page
+Quote Post
-Gość-
post 10.06.2006, 11:35:08
Post #10





Goście







Z>rob echo tej linijki podczas dodawania :
  1. <?php
  2. $query = "INSERT INTO zamowienie VALUES ('".$_GET['id_klienta']."','".$_GET['nazwa']."','".$_GET['ilosc']."','".$_GET['faktura']."','".$_GET['dostawa']."');";
  3. ?>

zeby php t am powstawial odpowiednie wartosci i przekopiuj takie zapytanie pod konsole MySQLa i zobacz co tam sie dzieje, bo je tutaj nie widze zadnych bledow. Wiec moze dodaje poprawnie, ale ty zle cos pozniej robisz.
Go to the top of the page
+Quote Post
Misior
post 12.06.2006, 12:41:19
Post #11





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.06.2006

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


oki, zrobilem... dodawanie dziala (mialem bledy w insert into) a co za tym idzie mam kolejny problem! Jako, iz zamowienie zostalo przyjete zmieni sie rekord w innej tabeli - magazyn! Dla przykladu - na stanie mamy 100 paczek papierosow L&M. Klient wchodzac na strone zamawia 60 sztuk! W tym momencie, po zamowieniu zmieni sie ilosc sztuk teraz dostepnych, zatem: 100-60 i na stanie zostaje nam 40 sztuk!

Jak uzyc polecenia uptade dla tego problemu i gdzie je wstawic! Cos niby zrobilem ale nie dziala!

  1. <?
  2. if(($_GET['nazwa']) == "L&M" && $_GET['ilosc'])
  3. {
  4.  
  5.  
  6. $conn= mysql_connect("localhost","root","krasnal"); 
  7. mysql_select_db("hurtownia"); 
  8. $wynik= mysql_query("select nazwa,ilisc_dostepna from magazyn where id=2");
  9.  
  10. while($rekord = mysql_fetch_assoc($wynik)){
  11.  
  12. $ilisc_dostepna = $rekord['ilisc_dostepna'];
  13. print "Magazyn: $ilisc_dostepna<br>";
  14.  
  15.  
  16.  
  17.  
  18. if ($ilisc_dostepna > ($_GET['ilosc'])){
  19.  
  20. $query = "INSERT INTO zamowienie (id_klienta,nazwa,ilosc,faktura,dostawa) VALUES ('".$_GET['id_klienta']."','".$_GET['nazwa']."','".$_GET['ilosc']."','".$_GET['faktura']."','".$_GET['dostawa']."');";
  21. $wynik1 = mysql_query($query);
  22. echo $wynik1 = mysql_query($query);
  23.  
  24. $query1 = "UPTADE magazyn SET ilisc_dostepna-($_GET['ilosc'])"; //chodzi mi o te czesc
  25. $wynik2 = mysql_query($query);
  26. }
  27. else{
  28. print "Niestety nie posiadamy takiej ilosci na stanie";
  29. }
  30. }
  31. }
  32. ?>


Bardzo prosze o jakakolwiek pomoc!
Go to the top of the page
+Quote Post
nospor
post 12.06.2006, 12:44:25
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




moze przed pisaniem takich rzeczy luknal bys do manuala, zarowno php jak i mysql... naprawde, tam mozna znaleźć rozwiązanie na wiele rzeczy. poczytaj se o skladni update, poczytaj se jak wkladac zmienne w php do stringu

Kod
<?php
$query1 = "UPDATE magazyn SET ilisc_dostepna=ilisc_dostepna-".$_GET['ilosc'];
?>


http://dev.mysql.com/doc/refman/5.0/en/update.html
http://pl.php.net/manual/pl/language.types.string.php


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

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Misior
post 12.06.2006, 19:01:29
Post #13





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 9.06.2006

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


oki, wszystko dziala! Zrobilem jeszcze aktualizowanie stanu magazynowego i jest ok!

Dziekuje za pomoc!
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 1.07.2025 - 10:04