Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/mysql] Sprawdzanie czy jest już w bazie.
Forum PHP.pl > Forum > Przedszkole
kurdak
Witam wszystkich.
Chciałbym małą podpowiedz do mojego "programu", oto kod

  1. <? if ($i < 1){
  2. echo '
  3. <form action="produkty_dodaj.php?i=1" method="post">
  4. <input type="text" name="ilosc">
  5. <input type="submit" name="count" value="Dalej">
  6. </form> ';
  7. }
  8. ?>
  9. <?php 
  10. if (isset($_POST['count'])){
  11. $ile = (int)$_POST['ilosc']; 
  12. if($ile == 0) $ile = 1;
  13. echo '<form action="produkty_dodaj.php" method="post"><table border="1">
  14. <input type="hidden" name="ilosc" value="'.$ile.'" />
  15. <tr><td>Nazwa produktu: </td><td>Kod produktu: </td><td>Cena produktu: </td></tr>';
  16. for($i = 0; $i < $ile; $i++){ 
  17. echo '<tr>'; 
  18. echo '<td> <input type="text" name="nazwa'.$i.'"></td>';
  19. echo '<td> <input type="text" name="kod'.$i.'"></td>';
  20. echo '<td> <input type="text" name="cena'.$i.'"></td>';
  21. echo '</tr>';
  22. }
  23. echo '</table><p><input type="submit" name="add" value="Dodaj !"></p></form>';
  24. }
  25. if(isset($_POST['add'])){
  26. $ile = (int)$_POST['ilosc']; 
  27. for($i = 0; $i < $ile; $i++){ 
  28. $nazwa = $_POST['nazwa'.$i];
  29. $kod = $_POST['kod'.$i];
  30. $cena = $_POST['cena'.$i];
  31.  
  32. if (empty($nazwa) || empty($kod) || empty($cena)){
  33. echo "<br />Nie wpisales wszystkiego w produkcie: $nazwa, $kod, $cena !!!";}
  34.  
  35. else {
  36. include "bd.php";
  37. mysql_query("INSERT INTO produkty (id,nazwa,kod,cena) VALUES('', '$nazwa', '$kod', '$cena')");}
  38. }
  39. if ($i < 2) {echo "<br /><br /><br />Produkt dodany !!!";}
  40. if ($i >= 2) {echo "<br /><br /><br />Produkty dodane !!!";}
  41. }
  42. ?>


Chciałbym dowiedzieć się jak sprawdzić czy produkt jest już w bazie danych, jeśli tak, to dodaje sobie następny produkt.
Na koniec chciałbym, że jeśli nie zostanie spełniony któryś z warunków, czyli na przykład jedno z pól było puste to "aplikacja" wyświetla błąd i pokazuje tabelkę z wpisanymi poprzednio danymi, ale liczą się tylko te złe, te, które przeszły pomyślnie wszystkie testy już żeby się nie wyświetlały.
Z góry dziękuję za podpowiedzi.
Pozdrawiam Michał Kurkiewicz.
specialplan
Spróbuj najpierw pobrać ten produkt z bazy danych. Jeśli się uda - tzn że istnieje i wyrzuć wyjątek. Brak rezultatów oznacza iż produktu nie ma i można dodawać.
Wieviór
Możesz pobierać rekordy z bazy danych do tablicy i potem użyć in_array.
kurdak
Bardzo proszę o jakieś bardziej konkretne wskazówki.
Zaznaczam że dodałem specjalnie ten temat do przeczkola.
Pozdrawiam
specialplan
Już bardziej prosto chyba nie mogę wytłumaczyć. Mam napisać gotowy skrypt?
kurdak
Bardzo bym prosił o jakieś dokładniejsze informację, naprzykład jakiś kod lub polecenia i gdzie to wstawić.
Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.