Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Komunikat Truncated incorrect DOUBLE value:
pawel06281990
post 16.03.2019, 15:05:55
Post #1





Grupa: Zarejestrowani
Postów: 281
Pomógł: 0
Dołączył: 10.01.2014

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


Witam,

Mam problem pozmieniałem wszystko to co mi dubluje ale nadal mam komunikat

Truncated incorrect DOUBLE value: '2019 03'Truncated incorrect DOUBLE value: '296,18'

Ale w skrypcie i w bazie pozmieniałem

Tak wygląda zapis do bazy

Zapis dla niezalogowanych

Skrypt zapisu do bazy

Zapis dla zalogowanych jest taki sam

Tu jest zapis dla statystyk

  1. $result = dbquery($link,"SELECT data_zamowien FROM ".$db_prefix."zamowien WHERE data_zamowien >= '".showdate("statydata", $_POST['data_wystawienia'])."'");
  2. $data = dbarray($result);
  3.  
  4. if($data['data_zamowien']){
  5. $result = dbquery($link,"UPDATE ".$db_prefix."zamowien SET ile_zamowien=ile_zamowien +1, brutto=brutto+'".$_POST['brutto']."', netto=netto+'".$_POST['netto']."' WHERE data_zamowien>='".showdate("statydata", $_POST['data_wystawienia'])."'");
  6. }else{
  7. $result = dbquery($link,"INSERT INTO ".$db_prefix."zamowien SET data_zamowien='".$_POST['data_wystawienia']."', ile_zamowien='1', brutto='".$_POST['brutto']."', netto='".$_POST['netto']."'");
  8. }
  9.  
  10. $result1 = dbquery($link,"SELECT cala_data FROM ".$db_prefix."zarobki WHERE cala_data='".$_POST['cala_data']."'");
  11. $data1 = dbarray($result1);
  12. if($data1['cala_data']){
  13. $result = dbquery($link,"UPDATE ".$db_prefix."zarobki SET kwota_zarobiona=kwota_zarobiona+'".$_POST['brutto']."' WHERE cala_data ='". $_POST['cala_data']."'");
  14. }else{
  15. $result = dbquery($link,"INSERT INTO ".$db_prefix."zarobki SET cala_data='".$_POST['cala_data']."', kwota_zarobiona='".$_POST['brutto']."'");
  16. }
  17. //Zapis do statystyk
  18. $result = dbquery($link,"SELECT nazwa_pobraniem, nazwa_przedplata_na_konto FROM ".$db_prefix."statistics ");
  19. $data2 = dbarray($result);
  20.  
  21. if($_POST['nazwa']== $data2['nazwa_pobraniem']){
  22. $result = dbquery($link,"UPDATE ".$db_prefix."statistics SET wysylka_za_pobraniem=wysylka_za_pobraniem+'1' WHERE nazwa_pobraniem ='".$_POST['nazwa']."'");
  23. }
  24. if($_POST['nazwa']== $data2['nazwa_przedplata_na_konto']){
  25.  
  26. $result = dbquery($link,"UPDATE ".$db_prefix."statistics SET przedplata_na_konto=przedplata_na_konto+'1' WHERE nazwa_przedplata_na_konto ='".$_POST['nazwa']."'");
  27. }


Tak jak mówiłem w bazie danych jest zmienione na to co chce zapisać do danej tabeli, ale nadal mam napis

Truncated incorrect DOUBLE value: '2019 03'Truncated incorrect DOUBLE value: '296,18'

Co może to powodowaćquestionmark.gif
Go to the top of the page
+Quote Post
Pyton_000
post 16.03.2019, 16:40:47
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


Masz za małe kolumny w bazie ustawione. MySQL ma to do siebe ze ucina jesli sie nie miesci dana w komórkę.

Chociaż też tutaj widać że wsadzasz niepoprawny format danych do kolumny double. Pokaż strukturę tabeli jeszcze.

Ten post edytował Pyton_000 16.03.2019, 17:02:51
Go to the top of the page
+Quote Post
pawel06281990
post 16.03.2019, 17:11:41
Post #3





Grupa: Zarejestrowani
Postów: 281
Pomógł: 0
Dołączył: 10.01.2014

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


Tak wyglądają moje tabele w których zapisuje dane
tabela Przyjmująca zamówienie
  1. CREATE TABLE `pz_production` (
  2. `id` smallint(6) NOT NULL,
  3. `numer_zlecenia` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  4. `email` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  5. `status_druku` tinyint(4) NOT NULL DEFAULT 0,
  6. `nazwa_druku` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  7. `data_zamowienia` int(11) NOT NULL DEFAULT 0,
  8. `data_wysylki` date NOT NULL DEFAULT '0000-00-00',
  9. `kwota_kosztow` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  10. `format` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  11. `papier` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  12. `rodzaj_druku` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  13. `termin_realizacji` varchar(255) COLLATE utf8_polish_ci DEFAULT '0',
  14. `naklad` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  15. `status` tinyint(4) NOT NULL DEFAULT 0,
  16. `klucz_sledzienia` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  17. `lang` varchar(11) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  18. `material` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  19. `typ` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  20. `strony` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  21. `kurier` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  22. `waga` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  23. `user_name` smallint(6) NOT NULL DEFAULT 0
  24. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;


Tabela z opłaconym zamówieniem
  1. CREATE TABLE `pz_payment` (
  2. `id` smallint(6) NOT NULL,
  3. `zlecenia` varchar(255) COLLATE utf8_polish_ci NOT NULL,
  4. `dane_klienta` varchar(255) COLLATE utf8_polish_ci NOT NULL,
  5. `data_zalozenia` varchar(50) COLLATE utf8_polish_ci NOT NULL,
  6. `data_oplacenia` int(11) NOT NULL DEFAULT 0,
  7. `kwota_brutto` varchar(255) COLLATE utf8_polish_ci NOT NULL,
  8. `potwierdzienie` tinyint(4) NOT NULL DEFAULT 0,
  9. `user_id` smallint(6) NOT NULL DEFAULT 0
  10. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;


Tabela do generowania faktur

  1. CREATE TABLE `pz_facture` (
  2. `id` smallint(6) NOT NULL,
  3. `numer_zlecenia_faktura` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  4. `email` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  5. `nazwa_druku` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  6. `data_wystawienia` int(11) NOT NULL DEFAULT 0,
  7. `data_zakonczenia` int(11) NOT NULL DEFAULT 0,
  8. `kwota_zakupu` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  9. `format` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  10. `papier` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  11. `typ` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  12. `rodzaj_druku` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  13. `projekt` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  14. `naklad` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  15. `imie` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  16. `nazwisko` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  17. `adres` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  18. `miejscowosc` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  19. `kod_pocztowy` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  20. `nip` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  21. `pesel` varchar(100) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  22. `kurier` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  23. `opcja_wysylki` varchar(255) COLLATE utf8_polish_ci NOT NULL DEFAULT '0',
  24. `ilosc_paczek` int(11) NOT NULL DEFAULT 1,
  25. `brutto_netto` tinyint(4) DEFAULT 0
  26. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
Go to the top of the page
+Quote Post
Pyton_000
post 16.03.2019, 17:57:27
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

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


To nie są te tabele z zapytań.
Go to the top of the page
+Quote Post
pawel06281990
post 16.03.2019, 18:37:16
Post #5





Grupa: Zarejestrowani
Postów: 281
Pomógł: 0
Dołączył: 10.01.2014

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


Tu chodzi o te tabele statystyk.

W tej tabeli chodzi o data_zamowien ale nie wiem o co mu chodzi dokładnie .
  1. CREATE TABLE `pz_zamowien` (
  2. `id` mediumint(9) NOT NULL,
  3. `data_zamowien` int(11) NOT NULL,
  4. `ile_zamowien` int(11) NOT NULL,
  5. `brutto` varchar(255) COLLATE utf8_polish_ci NOT NULL,
  6. `netto` varchar(255) COLLATE utf8_polish_ci NOT NULL
  7. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;


Zawartość tabeli
  1. INSERT INTO `pz_zamowien` (`id`, `data_zamowien`, `ile_zamowien`, `brutto`, `netto`) VALUES
  2. (8, 1549463022, 52, '528684', '429842.4000000004');


A w tej tabeli chodzi o kwota zarobiono.
  1. CREATE TABLE `pz_zarobki` (
  2. `id` mediumint(9) NOT NULL,
  3. `cala_data` varchar(100) COLLATE utf8_polish_ci NOT NULL,
  4. `kwota_zarobiona` varchar(255) COLLATE utf8_polish_ci NOT NULL
  5. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;


A to jest z zawartość
  1. INSERT INTO `pz_zarobki` (`id`, `cala_data`, `kwota_zarobiona`) VALUES
  2. (8, '2019-02-06', '81336'),
  3. (9, '2019-02-07', '396513'),
  4. (11, '2019-02-08', '10167,43'),
  5. (12, '2019-03-14', '296,18'),
  6. (13, '2019-03-15', '185,61'),
  7. (14, '2019-03-16', '296,18');

Co jest źle w tabelach??

EIDT

Już naprawiłem miałem problem w w bazie danych z type ale już naprawiłem.

Ten post edytował pawel06281990 16.03.2019, 19:17:58
Go to the top of the page
+Quote Post
viking
post 16.03.2019, 19:40:02
Post #6





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


Problem to tu jest tak naprawdę z całą strukturą danych (kod pocztowy varchar 255 itp). Silnik myisam, brak relacji, bezpieczeństwo - podstawianie danych bezpośrednio z POST itd.


--------------------
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: 24.04.2024 - 19:30