Autor | Zpráva | ||
---|---|---|---|
tomas2245 Profil |
Zdravím, ako by sa dalo spraviť toto, že keď mám input:
<input type="text"> a doňho napíšem napr. číslo 1 tak do databáze by sa zapísalo miesto tej 1 = 100? 2 = 200 3 = 300 4 = 400 ... tu mám kód na pridávanie do databáze: 1function pridaj($pds_pc, $pds_pocet, &$pripoj2){ function pridaj($pds_pc, $pds_pocet, &$pripoj2){
$pds_pc = mysqli_real_escape_string($pripoj,$pds_pc);
$pds_test = mysqli_query($pripoj2,"SELECT * FROM statistika WHERE pc='$pds_pc'");
if(mysqli_num_rows($pds_test)<1){mysqli_query($pripoj,"INSERT INTO statistika (pc,pocet) VALUES ('$pds_pc','0')");}
$pds_c = mysqli_query($pripoj2,"UPDATE statistika SET pocet = pocet+$pds_pocet WHERE pc = '$pds_pc'");
return $pds_c;
} |
||
Joker Profil |
#2 · Zasláno: 19. 12. 2016, 12:11:01
Před uložením do databáze vynásobíte hodnotu 100.
|
||
tomas2245 Profil |
#3 · Zasláno: 19. 12. 2016, 13:01:28
Joker:
ďakujem za odpoveď, vedeli by ste mi ešte povedať, že ako to do toho môjho kódu zakombinovať? |
||
Rfilip Profil |
#4 · Zasláno: 19. 12. 2016, 13:38:39
Stačí drobná úprava. Za 3 řádek vlož:
$pds_pocet =(int)$pds_pocet * 100; $pds_pocet =(int)$pds_pocet * 100; Tvůj kod je náchylný na útok SQL Injection přes proměnnou $pds_pocet. Doporučuji zkontrolovat všechny vkládání do databáze, jestli všechny parametry máš ošetřené, řetězce funkcí mysqli_real_escape_string a čísla přetypováním na číslo. |
||
tomas2245 Profil |
Rfilip:
vďaka, funguje to :) ešte otázočka, takže aby ten kód nebol náchylný na SQL Injection mal by som upraviť 6 riadok na toto? : $pds_c = mysqli_query($pripoj2,"UPDATE statistika SET pocet = pocet+(int)$pds_pocet WHERE pc = '$pds_pc'"); $pds_c = mysqli_query($pripoj2,"UPDATE statistika SET pocet = pocet+(int)$pds_pocet WHERE pc = '$pds_pc'"); |
||
Rfilip Profil |
#6 · Zasláno: 19. 12. 2016, 14:11:31
v týhle metodě to už ošetřený máš tím přetypováním v násobení.
v ostatních metodách si dávej $pds_pocet =(int)$pds_pocet; o řádek nad/pod tím mysqli_real_escape_string ať máš ošetření proměnných hezky přehledně na jednom místě
|
||
tomas2245 Profil |
#7 · Zasláno: 19. 12. 2016, 14:13:26
Rfilip:
jasne, už chápem :) ešte raz diky.. |
||
Časová prodleva: 8 let
|
Toto vlákno je staré, již dlouho do něj nikdo nepřispíval.
Informace a odkazy zde uváděné už nemusejí být aktuální. Nechcete-li řešit zde uvedenou konkrétní otázku, založte si vlastní vlákno, nepište do tohoto. Vložíte-li sem nyní příspěvek, upoutáte pozornost mnoha lidí a někteří z nich si jen kvůli vám přečtou i všechny předcházející příspěvky. Předpokládáte-li, že váš text skutečně bude hodnotný, stiskněte následující tlačítko:
Běda vám, jestli to bude blábol.
0