Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MySQL]Sklep w php i mysql
Forum PHP.pl > Forum > Przedszkole
marcin-ka
Chciałbym zrobić wyświtlanie z bazy mysql zeby było np

Herbata
tutaj opis opis opis ...
cena
ilosc

a mojim kodem rboi ta tyl ile produktow tyle nazw i jest tak :

nazwa
nazwa
nazwa
nazwa
opis
opis
opis
opis
cena
cena
cena
cena
ilosc
ilosc
ilosc
ilosc

wszystko a powinno byc tak

nazwa
opis
cena
ilosc

nazwa
opis
cena
ilosc

nazwa
opis
cena
ilosc
...

oto moj kod : WYJASNIONE
pianta_d
a czemu tak robisz, nie łatwiej w jednym zapytaniu i tak pobierasz wszystko z jednej tabelki
  1. $wysilo = mysql_query ("SELECT nazwa, opis, cena, sztuk FROM produkty");
  2. while($row = mysql_fetch_array($wysilo)) {
  3.  
  4. echo $row['nazwa'].'<br />'.$row['opis'].'szt'.'<br />';
  5. }
marcin-ka
dzieki dziala tylko teraz sie troche zlea na konicu chyba dam <p> masz pomógł!

Witam was z nowym problem przejdę do rzeczy mianowicie chciałbym zrobić sklep ale teraz jest kłopot jaki zrobić takie coś jak przycisk dodaj do koszyka i że dodaje i wyświetla się obok w tabeli mała nazwa + i - i usuń i jest kłopot jak takie coś zrobić wiem że za pomocą np
  1. $_GET['dodaj'];
Proszę o pomoc z góry dziękuje!

facepalmxd.gif

Pomocy ;D
Turson
Do koszyka dodaje poprzez POST, w ukrytym inpucie możesz trzymać id przedmiotu, który dodajesz do koszyka, wtedy będzie łatwiej.
Dodajesz i usuwasz zapytaniem do bazy Insert/Delete
marcin-ka
Ale jak takie coś wykonać ? sad.gif
Turson
Jak wyświetlasz przedmiot to rozumiem, że tworzysz od razu przycisk "dodaj do koszyka". Zrób to w formularzu: ukryty input z wartością id przedmiotu oraz submit.

Po odebraniu formularza dodajesz przedmiot do bazy wg. ID konkretnemu użytkownikowi.
marcin-ka
Mniej mniej wiecej wiem o co chodzi al to 1/8 co rozumiem ale masz tu moj kod tego ;/
  1. <?php
  2.  
  3. include 'include/polaczenie.php';
  4.  
  5. $wysilo = mysql_query ("SELECT nazwa, opis, cena, sztuk FROM produkty");
  6. while($row = mysql_fetch_array($wysilo)) {
  7.  
  8. echo $row['nazwa'].'<br />'.$row['opis'].'<br />'.$row['cena'].' zl'.'<br />'.$row['sztuk'].' szt'.'<p />';
  9. }
  10. ?>
Turson
Tworzysz sklep a nie potrafisz napisać formularza i prostego zapytania do bazy?

  1. include 'include/polaczenie.php';
  2.  
  3. $wysilo = mysql_query ("SELECT id, nazwa, opis, cena, sztuk FROM produkty");
  4. while($row = mysql_fetch_array($wysilo)) {
  5.  
  6. echo $row['nazwa'].'<br />'.$row['opis'].'<br />
  7. '.$row['cena'].' zl'.'<br />
  8. '.$row['sztuk'].' szt'.'
  9. <form action="BieżącyPlik.php" method="post">
  10. <input type="hidden" name="id" value="'.$row['id'].'">
  11. <input type="submit" value="Dodaj do koszyka" name="wyslano">
  12. </form>
  13. <p />';
  14. }

Resztę sam dopisz
marcin-ka
teraz to bedzie rozpoznawało id każdego przedmiotu tak ?

pomoze ktos ;/ Help baaasmiley.gif
Turson
Tak po id, bo po nazwie nie jest najlepszym rozwiązaniem.
marcin-ka
czyli kolejny krok to co nwm aha dostaniesz pomogl! biggrin.gif
Turson
Napisałem formularz za Ciebie, to obierz z niego dane i dodaj przedmiot do koszyka (np. do tabeli 'koszyk' dodaj pola: id_uzytkownika i id_przedmiotu)
marcin-ka
Yyy. zrobilem to w php my admin ale jak odebrac dane i je wyswietlic ? z gory dzieki za wielka pomoc!!!
Turson
Odebranie danych z formularza => isset();
Dodanie przedmiotu do koszyka => INSERT INTO
marcin-ka
Ja mam taki kod dodanie.php
  1. <?php
  2. echo "<h1>Rejestracja</h1>";
  3.  
  4. $guzik = $_POST['guzik'];
  5.  
  6. //Formularz Danych
  7. $nazwa = $_POST['nazwa'];
  8. $opis = $_POST['opis'];
  9. $cena = $_POST['cena'];
  10. $ilosc = $_POST['ilosc'];
  11.  
  12.  
  13. if($guzik)
  14. {
  15.  
  16. if ($nazwa&&$opis&&$cena&&$ilosc)
  17. {
  18. //otwieranie bazydanych
  19. $connect = mysql_connect("localhost","root","");
  20. mysql_select_db("XXXXXXX"); //Wybieranie bazy danych
  21.  
  22. $queryreg = mysql_query("
  23.  
  24. INSERT INTO produkty VALUES ('','$nazwa','$opis','$cena','$ilosc')
  25.  
  26. ");
  27.  
  28. die ("Dodałeś pomyślnie nowy przedmiot! Kliknij tu aby, powrocic do <a href='index.php'>strony głównej</a>");
  29.  
  30.  
  31. }
  32. else
  33. echo "Prosze wypelnic wszystkie pola!";
  34.  
  35. }
  36.  
  37. ?>
  38. <html>
  39. <form action='dodanie.php' method='POST'>
  40. <table>
  41. <tr>
  42. <td>
  43. Nazwa Produktu:
  44. </td>
  45. <td>
  46. <input type='text' name='nazwa'>
  47. </td>
  48. </tr>
  49. <tr>
  50. <td>
  51. Opis Produktu:
  52. </td>
  53. <td>
  54. <input type='text' name='opis'>
  55. </td>
  56. </tr>
  57. <tr>
  58. <td>
  59. Cena Produktu:
  60. </td>
  61. <td>
  62. <input type='text' name='cena'>
  63. </td>
  64. </tr>
  65. <tr>
  66. <td>
  67. Ilosc Produktu:
  68. </td>
  69. <td>
  70. <input type='text' name='ilosc'>
  71. </td>
  72. </tr>
  73. </table>
  74. <p>
  75. <input type='submit' name='guzik' value='Dodaj'>
  76. </form>
  77. </html>
Turson
Usuń $queryReg i po prostu mysql_query("INSERT....");
marcin-ka
co to mi da jak tak zrobie nic
A ja chce zrobić koszyk jak go zrobić ?
Turson
Podałeś kod na dodanie produktu do bazy, a nie dodanie do koszyka.

Napisałem ci formularz i nawet nakierowałem jak zrobić dodanie do koszyka.
marcin-ka
Ale jak zrobić dodanie do koszyka coś takiego
  1. if($wyslano)
  2. {
  3. mysql_query("INSERT INTO koszyk VALUES ('A tutaj juz nie wiem co',' tu też ;/')");
  4. }
Turson
Najlepiej dodać id przedmiotu, id uzytkownika i opcjonalnie datę
marcin-ka
Czyli jakie tabele bym musiał zrobić ?
Turson
Tabele? Jedna wystarczy. Na przykład

koszyk
id_przedmiotu | id_usera | data_dodania
marcin-ka
Ok zrobiłem to i co teraz.
Turson
Przeczytaj porzedznie posty, masz wszystko czarno na białym...
marcin-ka
Mam odebrac dane isset() ale jak co mam wpisac
  1. isset($row['nazwa'], $row['opis'], $row['cena'], $row['ilosc'], )
?
Turson
w isset() masz sprawdzić czy formularz jest wysłany...

  1. include 'include/polaczenie.php';
  2.  
  3. $wysilo = mysql_query ("SELECT id, nazwa, opis, cena, sztuk FROM produkty");
  4. while($row = mysql_fetch_array($wysilo)) {
  5.  
  6. echo $row['nazwa'].'<br />'.$row['opis'].'<br />
  7. '.$row['cena'].' zl'.'<br />
  8. '.$row['sztuk'].' szt'.'
  9. <form action="BieżącyPlik.php" method="post">
  10. <input type="hidden" name="item_id" value="'.$row['id'].'">
  11. <input type="text" name="ilosc">
  12. <input type="submit" value="Dodaj do koszyka" name="wyslano">
  13. </form>
  14. <p />';
  15. }
  16. if(isset($_POST["wyslano"]))
  17. {
  18. $item_id = $_POST["item_id"];
  19. $ilosc = $_POST["ilosc"];
  20. if(is_numeric($ilosc))
  21. {
  22. mysql_query("INSERT into koszyk VALUES ('$item_id', '$user_id', '$ilosc')") or die();
  23. echo "Przedmiot został dodany do koszyka";
  24. }
  25. else echo "Ilość musi być liczbą całkowitą";
  26. }
  27.  


$user_id, które wpisałem do zapytania musisz zastąpić wg. twojego uznania. Pewnie trzymasz w sesji to.
marcin-ka
Gosciu jestes najlepszy exclamation.gif! dzzieki

A co z tym bedzie bo to idzie do koszyka a np jak sie ktos rozmyśli ?
Turson
Zrób nowy plik np. koszyk.php gdzie jak użytkownik wejdzie to ma listę wszystkich przedmiotów, które dodał do koszyka. Tam może usunąć wybrane pozycje.
Sytuacja niemal identyczna jak przy wyświetlaniu przedmiotów i dodaniu do koszyka. Tutaj wyświetlasz wszystko z tabeli koszyk dla danego użytkownika (po id użytkownika), dajesz formularz podobny jak tutaj, tylko że używasz DELETE FROM
kujol
Możesz też dodane przedmioty przechowywać w tablicy, a po zrealizowaniu zamówienia usunąć jej zawartość.
marcin-ka
TursoN Dzieki Kujol ale to ma byc automatyczne!

TursoN może zrobie tak że przy rejestracja każdy user dostaje swoje id i bedzie id produkty w koszyk oczywiscie id_usera czyli to co ma przy rejestracji no i data Dobre nawet ?
Turson
Stworzenie id usera przy rejestracji jest obowiązkiem wink.gif
marcin-ka
Ok mam zrobione ale musz e zrobić zeby w koszyk .php jakoś nazwe brało z sklep.php i cene żeby w koszyku sumowalo np Auto rc 12v kupione: 4 szt i cena za wsytskie 4 a nie że np cena za 1 wyświtli Jak zrobić takie coś doradzćie trochę Pozdro!

Wiem może ktoś jak takie coś wykonać ? biggrin.gif


help
Turson
Cytat
musz e zrobić zeby w koszyk .php jakoś nazwe brało z sklep.php

W tabeli `koszyk` masz id_przedmiotu, więc z tabeli `produkty` pobierasz nazwę, cenę gdzie id=id_przedmiotu z koszyka dla danego użytkownika.
Cytat
cene żeby w koszyku sumowalo np Auto rc 12v kupione: 4 szt i cena za wsytskie 4

Jak masz pobraną ilość z koszyka oraz cenę przedmiotu to obliczasz $ilosc*$cena
marcin-ka
dzieki


nie rozumiem jakim kodem sie robi to żeby brało nazwe
  1. $nazwa = $_POST['nazwa'];
  2. mysql_query ("INSERT INTO id, nazwa, id_przdmiotu ... FROM koszyk ");
coś takie bo to mi troche nie dziala
Turson
  1. $zapytanie = mysql_query("SELECT * FROM tabela") or die(mysql_error());
  2. if ($zapytanie)
  3. {
  4. $wynik = mysql_fetch_array($zapytanie);
  5. //wyświetlenie danych
  6. }
  7.  
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.