Zapis hodnoty do DB

Nedaří se vám s projektem a nenašli jste vhodné místo, kde se zeptat? Napište sem.
Pravidla fóra
Tohle subfórum je určeno pro konzultaci ucelených nápadů, popřípadě řešení komplexnějších projektů, které opravdu není možné rozdělit na menší části.
Většinu problémů jde rozdělit na menší a ptát se na ně v konkrétních subfórech.
Kony
Příspěvky: 382
Registrován: 09 dub 2020, 11:43
Reputation: 0

Re: Zapis hodnoty do DB

Příspěvek od Kony » 22 lis 2020, 23:57

ale ja mam server nyni pristupny pouze z me Ip adresy

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Zapis hodnoty do DB

Příspěvek od pavel1tu » 23 lis 2020, 07:06

Kony píše:
22 lis 2020, 22:03
takm i to pise

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''arduino_data ' SET 'hodnota'='0' WHERE 'modul'='svetlo1'' at line 1
Asi nemáš v databázi "arduino_data" pložku "hodnota" nebo "modul", strukturu databáze neznám a asi nikdo.

Pod čarou _____________________________________________________

Řeknu to asi takto:
- nevíme strukturu databáze
- nevidíme celý PHP kod
- vůbec netušíme jak jsou nastavená práva databáze a další věci

Já když jsem se v tom před lety takto plácal, prostě jsem server otevřel ven a kluci mi to s mým kodem testovali, kod jsem posilal PM a ve foru se řešili jen změny.

Dál jsem si na https://www.itnetwork.cz/ zaplatil kurz PHP, pak i programátora, který mi udělal dva univerzální PHP soubory na zápis a vyčítání položek z databáze - a jsou perfektně zabezpečené proti standartním útokům - takže si je mohu s klidným svědomím dovolit ovládat i z mobilu nebo z internet kavárny.

PS: nelze se naučit vše perfektně, a abych to měl "jako že to chodí" a pak lidem někdo odkodoval alarm, to si nedovolím
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

KamilV
Příspěvky: 479
Registrován: 03 dub 2018, 15:27
Reputation: 0
Bydliště: Olomouc

Re: Zapis hodnoty do DB

Příspěvek od KamilV » 23 lis 2020, 08:34

Kony píše:
22 lis 2020, 23:57
ale ja mam server nyni pristupny pouze z me Ip adresy
Šmarjá nemáš! Jak Ti to ještě mám říct. Pokud si myslíš, že máš, tak si to myslíš špatně. Ať už sis takové "zabezpečení" udělal sám, nebo Ti ho udělal někdo jiný, není dobře. Jak víc Ti to mám ještě dokázat, než tím, že se s Tebou bavím o datech v tabulkách, které jsi nikde neuvedl?

Já Ti samozřejmě nechci dávat výčet bezpečnostních děr sem do diskuze, protože by toho mohl někdo zneužít (asi ani ne ze zdejší komunity, ale kdokoliv, kdo by to našel dřív, než bys to opravil). Proto navrhuji SZ.

Ale pokud chceš stále dokola psát, že to máš zabezpečené, je to tvá volba. Já být tvým klientem a vědět, že máš mé heslo uložené jen tak viditelné v DB a kdokoliv na světě si ho může vytáhnout, byl bych velice, velice znepokojen.

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Zapis hodnoty do DB

Příspěvek od pavel1tu » 23 lis 2020, 15:46

KamilV píše:
23 lis 2020, 08:34
Šmarjá nemáš! Jak Ti to ještě mám říct. Pokud si myslíš, že máš, tak si to myslíš špatně. Ať už sis takové "zabezpečení" udělal sám, nebo Ti ho udělal někdo jiný, není dobře. Jak víc Ti to mám ještě dokázat, než tím, že se s Tebou bavím o datech v tabulkách, které jsi nikde neuvedl?

Já Ti samozřejmě nechci dávat výčet bezpečnostních děr sem do diskuze, protože by toho mohl někdo zneužít (asi ani ne ze zdejší komunity, ale kdokoliv, kdo by to našel dřív, než bys to opravil). Proto navrhuji SZ.

Ale pokud chceš stále dokola psát, že to máš zabezpečené, je to tvá volba. Já být tvým klientem a vědět, že máš mé heslo uložené jen tak viditelné v DB a kdokoliv na světě si ho může vytáhnout, byl bych velice, velice znepokojen.
Neřešte tu blbosti typu zabezpečení, vůbec netušíš na čem mu to běží, jak to má nastavené. Jinak lze nastavit přístup na WWW server jen z jednotlivých IP.
Řešte tu funkčnost, pak ať si se zabezpečením poradí sám
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

KamilV
Příspěvky: 479
Registrován: 03 dub 2018, 15:27
Reputation: 0
Bydliště: Olomouc

Re: Zapis hodnoty do DB

Příspěvek od KamilV » 23 lis 2020, 16:14

pavel1tu píše:
23 lis 2020, 15:46
Neřešte tu blbosti typu zabezpečení
U webových aplikací není zabezpečení blbost. Nezabezpečený server může někdo do pár minut vykrást, shodit, prodat osobní data. S ohledem na GDPR jsi povinen tomu předcházet.
pavel1tu píše:
23 lis 2020, 15:46
vůbec netušíš na čem mu to běží, jak to má nastavené.
Nevím, Pavle, na základě čeho tohle píšeš. Já nejen že tuším, ale naprosto přesně vím na čem mu to běží. Právě proto, že tam má tolik bezpečnostních děr, vím přesně jaký má HTTP server, jakou má databázi, jaká v ní má data a kdybych mu nechtěl pomoct, tak mu cokoliv do db zapíšu, smažu, zkopíruju.
pavel1tu píše:
23 lis 2020, 15:46
Jinak lze nastavit přístup na WWW server jen z jednotlivých IP.
Netvrdím, že to nelze, tvrdím, že on to tak nemá. Prostě se to nedělá stylem, že na úvodní stránce dáš IF s podmínkou na REMOTE_ADDR a když nevyhovuje, vypíšeš do HTML meta tag na přesměrování na seznam.cz
pavel1tu píše:
23 lis 2020, 15:46
Řešte tu funkčnost, pak ať si se zabezpečením poradí sám
To je programátorský mýtus, že zabezpečení je cosi navíc, co se staví nad funkčností. Ve skutečnosti bezpečnost provází celý vývoj krok za krokem.
Doporučuji např. článek o SSDLC:
https://www.cleverandsmart.cz/bezpecnos ... aci-ssdlc/

Nevidím přínos v tom napsat něco sice funkčně, ale špatně a pak to psát celé znovu.

Ale jak myslíte, nemám potřebu se s pomocí vnucovat.

KamilV
Příspěvky: 479
Registrován: 03 dub 2018, 15:27
Reputation: 0
Bydliště: Olomouc

Re: Zapis hodnoty do DB

Příspěvek od KamilV » 23 lis 2020, 16:37

pavel1tu píše:
23 lis 2020, 07:06
Kony píše:
22 lis 2020, 22:03
takm i to pise

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''arduino_data ' SET 'hodnota'='0' WHERE 'modul'='svetlo1'' at line 1
Asi nemáš v databázi "arduino_data" pložku "hodnota" nebo "modul", strukturu databáze neznám a asi nikdo.
Ne, to by chyba z MySQL vypadala jinak.
Když pominu, že v názvu tabulky je na jejím konci mezera, která se tam vloudila už martinius96ovi, problém je hlavně v názvu sloupce hodnota.
Zatímco martinius96 ji správně "obalil" do zpětných apostrofů, Kony zpětné apostrofy nahradil normálními, čímž z názvu sloupce udělal string. A dotaz se pak snaží dělat update nad žádným sloupcem, takže vyhodí syntax error.

Sice nechápu, proč martinius96 radí uzavírat číselnou hodnotu do apostrofu, ale radu na funkčnost už jsem dal.

Uživatelský avatar
kiRRow
Příspěvky: 1152
Registrován: 07 kvě 2019, 07:03
Reputation: 0
Bydliště: Opava

Re: Zapis hodnoty do DB

Příspěvek od kiRRow » 23 lis 2020, 16:48

Na ty SQL injekce fakt pozor. Začátečnická chyba. JAKÝKOLIV VSTUP musí být řádně ošetřen. Jinak ti tam jako dotaz jednoduše bouchnu dokončení SQL dotazu a pak si krásně dělám s tvou databází co se mi zlíbí.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 11 hostů