Jump to content
php.lv forumi

Skaitļu ievietošana datubāzē


stencilz

Recommended Posts

hmnc --> tieshi taadeelj var izmantot peedinjas :)

+ esmu ieveerojis ka dazreiz PHP parseris nebuut ciparu netgriezj kaa integer/float.. bet padod kaa stringu .

Tas ka PHP pats nosaka mainiigaa tipu ir gan + gan - ....

+ Lielaako dalju vieglaak kodeet --> nav cieshi jaapiedomaa par tipiem

- Lielaaka iespeeja ka kautkur uzradiisies kljuuda...

 

Nepateiksu gan konkreeti piemeeru, bet man ir gadijies kad vajadzeeja veikt matimatiskas darbiibas un Parseris meta aaraa kljuudu :(

naacaas to $a parverst par skaitli ar Settype() :(

-------------

Link to comment
Share on other sites

hmm. ne reizi neesmu saskāries, ka dēļ datu tipa php bļaustītos.

galu galā ir tādas metodes kā (int)$num (uztaisa integeru) vai vienkārši pareizini ar 1 (js style). vēl var rakstīt pats savas funkcijas integeru noteikšanai, kas parasti ietver sevī 2-3 citas ar skaitļiem saistītas pārbaudes :)

Link to comment
Share on other sites

hmnc -->

Nu luuk piemeers kur nevari buut 100% parliecinaats kaads datu tips tiks padots DB

palid un paskaties pats

ko izdara f-ja settype() ;)

(novaac pieliec aizkomenteetaas daljas...)

 

Seit

 

Edit : iezagusies kljuuda , pielabot no $dzi=settype($dzimums, "int"); Uz $dzi=settype($dzi, "int");

Edited by Grey_Wolf
Link to comment
Share on other sites

Grey_Wolf, man gan liekas, ka šādos gadījumos vienkārši vajag pārbaudīt vai iesūtītā vērtība ir numeric.

 

Ja pastāv iespēja iespēja, ka vērtība var nebūt numeric, tad uzreiz jau db jābūt varchar tipam un ievietošanu jāveic ar pēdiņām.

 

Vārdu sakot, vai nu pieļaut tikai precīzi noformētus datus, strikti tos pārbaudot, vai arī neļaut neko. Tā man vismaz liekas.

Link to comment
Share on other sites

Pilniigi piekriitu, tikai kaa redzams 'ziimeejumaa' tad sanjemot datus no formas nevari buut 100% parliecinaats kaadaa formaa tie tiks atgriezti,

taadeelj ievadot DB tos vienkaarshi ieliek peedinjaas... (vai parveersh par vajadziigo tipu)...

(sajaa gadijumaa 1 VAI 2 , un veidot warchar lauku galiigi garaam , tiek izmantots TinyInt (1) ...)

 

Edit: bet vispaar taa arii nesapratu kaadeelj gljuko settype() :(

nu vieniigi vinjai 100% tiek padots string (trim() atgriezj stringu)....

Taa kaa par to kaa PHP dazreiz uzvedas ar datu tipiem.....

Edited by Grey_Wolf
Link to comment
Share on other sites

×
×
  • Create New...