Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 5. 12. 2006, 23:15:30
Zdravím,
nevím, jestli to tak je vždycky, nebo jsem tomu nikdy nevěnoval pozornost, ale jak je to s typy hodnot získaných z databáze (mysql)? Já např. ve svém skriptu vybírám z databáze hodnotu sloupce, který má nastaveno integer, ve skriptu je ale tato hodnota proměnné typem string. |
||
koudi Profil |
#2 · Zasláno: 5. 12. 2006, 23:18:23
V php nemůžeš datový typy brát zase tak moc vážně.
|
||
Anonymní Profil * |
#3 · Zasláno: 5. 12. 2006, 23:23:54
Jo, jasně... Ale chtěl bych v tom mít aspoň ze svého pohledu pořádek, takže jak to tedy je? V PHP dělám už pár let, ale tohle jsem nikdy neřešil, zdá se mi, že předtím (nedávno jsem přeinstalovával server) měly proměnné s hodnotami získanými z db správné typy.
|
||
arcadosi Profil |
#4 · Zasláno: 5. 12. 2006, 23:24:17
fanatik :)
|
||
Anonymní Profil * |
#5 · Zasláno: 5. 12. 2006, 23:26:51
Jo, nejspíš to je nějaká schizofrenie, ale snažím se v php konstrolovat a v rámci možností dodržovat konvcence obvyklé v jiných programovacích jazycích.
|
||
jrm Profil |
#6 · Zasláno: 6. 12. 2006, 09:09:14
Vyčti z dB do proměnné a pak se ptej na typ proměnné pomocí Is_Integer, Is_String, atd.
|
||
Anonymní Profil * |
#7 · Zasláno: 6. 12. 2006, 11:06:02
No nějak se nemůžeme dopracovat k výsledku - samozřejmě, že já si načítám hodnoty z databáze, ale pak docházím k zjištění, že při přechodu z mysql do php dochází k přetypování všech hodnot na string. Jinak bych se tu neptal... Ptám se tedy ještě jednou a jinak - je to normální chování, že mysql přetypovává vše do stringu?
|
||
koudi Profil |
#8 · Zasláno: 6. 12. 2006, 11:10:23
Ani tak ne mysql jako php :)
|
||
Anonymní Profil * |
#9 · Zasláno: 6. 12. 2006, 12:06:16
Mohl by mi někdo konečně odpovědět, pokud odpověď zná? Nebo v mém dotazu nacházíte stále drobné nedostatky a budete je po mě nejdříve opravovat?
koudi Ano, samozřejmě, že to je PHP, jenom jsem se přepsal... |
||
Leo Profil |
#10 · Zasláno: 6. 12. 2006, 12:06:29
"je to normální chování, že mysql přetypovává vše do stringu"
ten typ zjistujete v php, takze jde o php. v nem jsou prakticky vsechny vstupy (get, post atd.) retezce. a to nemluvim co vam php nacte pokud je v mysql hodnota null. L |
||
Aesir Profil |
#11 · Zasláno: 6. 12. 2006, 12:19:22
Anonymní:
je to normální chování, že mysql přetypovává vše do stringu? Ano je to normální chování, databáze zná určité datové typy a prog. jazyk je nemusí ctít a naopak, proto tato konverze. A netýká se to pouze MySQL + PHP. |
||
Anonymní Profil * |
#12 · Zasláno: 6. 12. 2006, 13:31:58
Taková blbá otázka - ale proč tedy vrstva mezi PHP a MySQL zajišťující propojení nedodržuje typy, které jsou nadefinovány v MySQL? Copak je něco takového těžké implementovat?
|
||
ernesto Profil * |
#13 · Zasláno: 7. 12. 2006, 00:52:35
protože si jí ještě nenapsal, experte
"V PHP dělám už pár let" - těžko tomu věřim drze se ještě zeptam k čemu to vůbec potřebuješ? když máš navrženou databázi a lámeš z ní data tak si můžeš bejt jistej, že sou v ní ty datový typy, který sis tam nabrnkal. ještě sem neslyšel o tom, že by šlo do třeba [date] nacpat [varchar]. "snažím se v php konstrolovat a v rámci možností dodržovat konvcence obvyklé v jiných programovacích jazycích" 1. PHP je skriptovací, ne programovací jazyk 2. proč proboha? |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0