Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

MySQL PHP - Wymiana informacji między dwoma tabelami.

deskjet930c 21 Lis 2012 06:11 1290 4
  • #1 21 Lis 2012 06:11
    deskjet930c
    Poziom 8  

    Witam,

    Zacznę od tego, że jestem początkującym uczniem PHP+MySQL

    Sytuacja wygląda następująco.

    Tabela pierwsza:

    Kod: mysql
    Zaloguj się, aby zobaczyć kod


    Tabela druga:
    Kod: mysql
    Zaloguj się, aby zobaczyć kod



    Kod formularza:
    Kod: html4strict
    Zaloguj się, aby zobaczyć kod

    Kod skryptu:

    Kod: php
    Zaloguj się, aby zobaczyć kod


    Proszę o pomoc, co mam zrobić by przy pomocy formularza z tabeli 1 odjąć jakąś ilość sztuk danego asortymentu i zapisać tą informację w tabeli numer 2.

    0 4
  • Pomocny post
    #2 21 Lis 2012 07:09
    Dżyszla
    Poziom 42  

    Nie rozumiem jak się mają dwie pierwsze tablice PHP oraz MySQL z ostatniego kodu. Jeśli chcesz dokonywać modyfikacji wartości w tabelach MySQL to podaj proszę ich strukturę (CREATE TABLE...). Co prawda domyślam się, o co chodzi, ale nie wiem, czy chcesz zmieniać coś w tabelach bazodanowych, czy w tablicach PHP.

    0
  • #3 21 Lis 2012 07:47
    deskjet930c
    Poziom 8  

    Dżyszla napisał:
    Nie rozumiem jak się mają dwie pierwsze tablice PHP oraz MySQL z ostatniego kodu. Jeśli chcesz dokonywać modyfikacji wartości w tabelach MySQL to podaj proszę ich strukturę (CREATE TABLE...). Co prawda domyślam się, o co chodzi, ale nie wiem, czy chcesz zmieniać coś w tabelach bazodanowych, czy w tablicach PHP.


    Struktura tabeli 1:

    Kod: mysql
    Zaloguj się, aby zobaczyć kod


    Struktura tabeli 2:

    Kod: mysql
    Zaloguj się, aby zobaczyć kod


    Chodzi Mi o zmianę danych w MySQL przy pomocy PHP.

    0
  • Pomocny post
    #4 21 Lis 2012 07:55
    Dżyszla
    Poziom 42  

    Dlaczego ilość przechowujesz jako VARCHAR? Owszem, da się zrobić, ale będzie to znacznie cięższy kod. Proponuję najpierw zastosować właściwy typ dla tego pola.

    Następnie wykonasz po prostu dwa zapytania (jedno po drugim):

    Kod: sql
    Zaloguj się, aby zobaczyć kod

    Niestety generalnie źle też zaprojektowałeś tabele i formularz. Poprawnie powinno być tak, że produkt wybierasz z listy (wszak nie możesz wysyłać produktu, którego nie masz) i przekazujesz wyłącznie ID, a nie nazwę. W ostateczności możesz pozostawić jak jest, ale wówczas musiałbyś sprawdzić, czy wpisany produkt istnieje, a jeśli tak - jakie jest jego ID. Następnie w tabeli WYSLANE nie podajesz już nazwy produktu, a tylko jego ID odpowiadające ID z tabeli ASORTYMENT. Także wtedy aktualizując tą ostatnią opierasz się w sekcji WHERE nie o nazwę, lecz o ID.

    0
  • #5 27 Lis 2012 06:57
    deskjet930c
    Poziom 8  

    Witam ponownie,

    Wszystko działa poprawnie, dziękuję za pomoc, temat do zamknięcia

    0