Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zle wykonanie WHILE i wpisanie do bazy
roghatt
post
Post #1





Grupa: Zarejestrowani
Postów: 250
Pomógł: 11
Dołączył: 20.03.2006

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


Najpierw kawałek kodu
  1. <FORM ACTION="index.php?top=<?=$ADM_TOP_FAKTURA?>" METHOD="POST" enctype="multipart/form-data">
  2. <?
  3. echo "<table border=\"0\" cellspacing=\"4\">";
  4. echo "<tr>";
  5. echo "<td style=\"background-color: #dffcf8\" colspan=\"3\">";
  6. ?>
  7. Wpisz numer faktury: <INPUT TYPE="TEXT" NAME="nrfaktury" size="25">
  8. <?
  9. echo "</td>";
  10. echo "</tr>";
  11. while($row=mysql_fetch_array($wynik1))
  12. {
  13. $id=$row['id'];
  14. $nazwa= $row['nazwa'];
  15. $cenan = $row['cenan'];
  16. $podatek = $row['podatek'];
  17. $nrfaktury = $_POST['nrfaktury'];
  18.  
  19. echo "<tr>";
  20. echo "<td style=\"background-color: #dffcf8\">";
  21. echo $nazwa;
  22. echo "</td>";
  23. echo "<td style=\"background-color: #dffcf8\">";
  24. echo "$cenan";
  25. echo " zl.";
  26. echo "</td>";
  27. echo "<td style=\"background-color: #dffcf8\">";
  28. ?>
  29. Wpisz ilosc: <INPUT TYPE="TEXT" NAME="ilosc" size="5">
  30. <?
  31. $ilosc = $_POST['ilosc'];
  32. echo "</td>";
  33. echo "</tr>";
  34.  
  35. if ($nrfaktury) {
  36. mysql_query ("INSERT INTO faktura VALUES (' ','$nazwa', '$cenan', '$podatek', '$pkwiu', '$jm','$kreska','$nrfaktury','$ilosc');");
  37. if (mysql_affected_rows()>0) echo("Faktura dodana.");
  38. $result=dbquery($sql,$conn);
  39.  
  40. }
  41. }
  42.  
  43. echo "</table>";
  44. ?>
  45. <input type="hidden" name="test" value="test"><br>
  46. <input type="submit" value="&nbsp;&nbsp;&nbsp;&nbsp;Dodaj&nbsp;&nbsp;&nbsp;&nbsp;">
  47. </form>


Formularz wygląda tak.
Na samej górze pole do wpisania nr faktury.
Pod spodem jedno pod drugim spis produktów nazwa i cena (pobierane z innej tabeli). Obok produktu pole na wpisanie ilości.

Wszystko po kliknięciu na "Dodaj" powinno być wpisane do drugiej tabeli. Wszystko pięknie mi wpisuje, nazwę, cenę, i inne parametry. Numer faktury mi też wpisuje do tabeli, ale w polu "ilość" wpisywana jest ostatnia wartość wpisana przy ostatnim produkcie.
Czyli np. jak wpiszę przy produktach ilość:
Produkt1 ilosc:5
Produkt2 ilosc:6
Produkt3 ilosc:7

i w tabeli w polu ilość wszędzie jest cyfra 7. Po kliknięciu w "dodaj" wywołana jest ta sama strona z formularzem bo w nim znajduje się funkcja wpisywania do bazy.
Nie mogę sobie poradzić jedynie z wpisywaniem tej ilości przy każdym produkcie.
Mam 5 produktów i wyświetla się 5 razy "Faktura dodana" więc 5 razy jest do bazy dodawane ale jak pisałem wpisuje w polu "ilość" wszędzie ostatnią wartość.

Dodatkowo jaki parametr dodać aby nie wpisywało do bazy produktu w której nic nie wpiszemy w polu "ilość"
Myślałem, że:
  1. if ($ilosc) {
  2. mysql_query ("INSERT INTO faktura VALUES (' ','$nazwa', '$cenan', '$podatek', '$pkwiu', '$jm','$kreska','$nrfaktury','$ilosc');");
  3. if (mysql_affected_rows()>0) echo("Faktura dodana.");
  4. $result=dbquery($sql,$conn);
  5. }

ale coś nie do końca działa.
Proszę o wskazówki.

Ten post edytował freelinkz 7.09.2009, 20:43:17
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: 26.09.2025 - 06:29