mysql - přidání cizího klíče - nový sloupce...
- arxeiss
- Začátečník

- Registrován: 19. črc 2008
- Bydliště: Krmelín (předměstí Ostravy)
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
Já to řeším jednodueš, mailem jim příjde link s platnostní 15 minut, do této doby musí heslo heslo změnit nebo mají smůlu, po změně samozřejmě link ztrácí platnost, 2x nemůžeš heslo na stejný link změnit...
PC : CPU: C2D E5200 2500Mhz @ 3750Mhz a AC Freezer 7PRO MB: Gigabyte GA-P31-DS3L rev.2,1 GPU: ATI Radeon 3650HD 256MB RAM: A-Data Vitesta 2x2GB Zdroj: Forton OEM 400W HDD: Samsung F2 500GB
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
- Václav Sedlář
- Žlutá karta Bazar

-
- Registrován: 01. dub 2006
- Bydliště: Liberec
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
hmm, bohužel omezovat nebo honit uživatele nemůžu - je to web pro akademický senát a může se stát, že nově registrovaný senátor nebude na meilu... a registrovat může jen admin= předseda senátu...
Potřeboval bych ale vyřešit ještě jednu věc - databázi v jedné tabulce mám jistý sloupec 'stav'(varchar) a 'datum'(date)...
a potřebuji až nastane to datum které je tam vloženo, tak aby se změnil pro ten řádek ve sloupci stav ten obsah...jde to nějak automaticky-aby to měnila databáze sama?
Potřeboval bych ale vyřešit ještě jednu věc - databázi v jedné tabulce mám jistý sloupec 'stav'(varchar) a 'datum'(date)...
a potřebuji až nastane to datum které je tam vloženo, tak aby se změnil pro ten řádek ve sloupci stav ten obsah...jde to nějak automaticky-aby to měnila databáze sama?
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
Stačí hlídat datum a pokud se datum bude rovnat požadovanému, tak proběhne UPDATE. Změní to první uživatel, co tam vleze v odpovídající datum.
U toho příkladu je horší, že pokud ten někdo nepřijde v den D, tak se nic nezmění. Šlo by to napsat lépe, ale to by vyžadovalo přemýšlení 
Jestli tam jsou chyby, tak pardon, ale nechce se mi to kontrolovat. Nýbrž návrh je jasný
Záleží akorát jak ukládáš datum.
//edit: přepsáno, asi boží vůle
Kód: Vybrat vše
$day_d = date("d-m-Y");
if($day_d == "28-02-2012"){
mysql_query("UPDATE SET (stav) VALUES (true) WHERE datum >= CURDATE()");
}Jestli tam jsou chyby, tak pardon, ale nechce se mi to kontrolovat. Nýbrž návrh je jasný
//edit: přepsáno, asi boží vůle
Naposledy upravil(a) 1Pupik1989 dne úte 28. úno 2012, 23:25, celkem upraveno 4 x.
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- arxeiss
- Začátečník

- Registrován: 19. črc 2008
- Bydliště: Krmelín (předměstí Ostravy)
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
2Václav: Tím, že to řešíš takhle u registrace, tak je nemůžeš honit to je jasné, ale při změně hesla je to takhle dobré řešit...
Jinak proč to řešit tak složitě, není to lepší upravit v době kdy to budeš opravdu potřebovat
Jinak proč to řešit tak složitě, není to lepší upravit v době kdy to budeš opravdu potřebovat
PC : CPU: C2D E5200 2500Mhz @ 3750Mhz a AC Freezer 7PRO MB: Gigabyte GA-P31-DS3L rev.2,1 GPU: ATI Radeon 3650HD 256MB RAM: A-Data Vitesta 2x2GB Zdroj: Forton OEM 400W HDD: Samsung F2 500GB
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
- Václav Sedlář
- Žlutá karta Bazar

-
- Registrován: 01. dub 2006
- Bydliště: Liberec
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
1Pupik1989:
takto už to taky mám-ale jen provizorně, protože bych to musel dát všude, kde tu tabulku potřebuji....prý to jde udělat přímo v databázi - jakou "spoušť"...jen nevím zatím jak...
takto už to taky mám-ale jen provizorně, protože bych to musel dát všude, kde tu tabulku potřebuji....prý to jde udělat přímo v databázi - jakou "spoušť"...jen nevím zatím jak...
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
Tak u mě to spočivá v tom, že mám stránku na víc kousků. Pokud to tak nemáš, tak doporučuji předělat.
Mám:
header.php
menuleft.php
menuright.php
footek.php
a třeba v index.php je všechny includuji do sebe, přičemž se mi spojí layout jako jedna stránka. Pak už jen třeba do header.php napíšeš podmínku a je hotovo. I takové title a description mám jako proměnnou v php, jelikož nadpisi tahám z databáze.
Ty nastavuješ třeba kódóvání v každém souboru zvlášť?
Mám:
header.php
menuleft.php
menuright.php
footek.php
a třeba v index.php je všechny includuji do sebe, přičemž se mi spojí layout jako jedna stránka. Pak už jen třeba do header.php napíšeš podmínku a je hotovo. I takové title a description mám jako proměnnou v php, jelikož nadpisi tahám z databáze.
Ty nastavuješ třeba kódóvání v každém souboru zvlášť?
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- W3N4
- Začátečník

-
- Registrován: 06. srp 2008
Re: mysql - přidání cizího klíče - nový sloupce...
Pouzij trigger.
btw, trochu OT dotaz. Proc pouzivate funkce mysql_query, mssql_query apod. pro komunkaci s databazi? Me to prijde jako totalni prasarna, dyt to nema snad ani jednu vyhodu.
btw, trochu OT dotaz. Proc pouzivate funkce mysql_query, mssql_query apod. pro komunkaci s databazi? Me to prijde jako totalni prasarna, dyt to nema snad ani jednu vyhodu.
Naposledy upravil(a) W3N4 dne stř 29. úno 2012, 00:49, celkem upraveno 1 x.
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
A co používáš na PHP ty?
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- W3N4
- Začátečník

-
- Registrován: 06. srp 2008
Re: mysql - přidání cizího klíče - nový sloupce...
Ja v PHP neprogramuju, ale pokud vim, tak stejne jako treba Java ma rozhrani JDBC, tak PHP ma treba PDO.
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
Někteří OOP v PHP neumí, ne každý hosting/freehosting má alespoň PHP 5.1 a ne každý server to podporuje.
Navíc většina lidí má problémy i s klasickým PHP + DB, natož s PDO + DB.
Navíc většina lidí má problémy i s klasickým PHP + DB, natož s PDO + DB.
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- arxeiss
- Začátečník

- Registrován: 19. črc 2008
- Bydliště: Krmelín (předměstí Ostravy)
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
A nevím co je prasácké na klasických mysql_query atd... Já si například napsal svoji třídu pro práci s MySQL a to kvůli cachování a odchytu chyb, aby při problému se mi vypsala nějaká "pěkná" chyba ne klasická PHP, ale vevnitř stejně normálně volám mysql_query apod... Nevidím v tom nic prasáckého...
PC : CPU: C2D E5200 2500Mhz @ 3750Mhz a AC Freezer 7PRO MB: Gigabyte GA-P31-DS3L rev.2,1 GPU: ATI Radeon 3650HD 256MB RAM: A-Data Vitesta 2x2GB Zdroj: Forton OEM 400W HDD: Samsung F2 500GB
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
Netbook : Asus EEE CPU: Intel Atom N270 1,6GHz RAM: A-Data 2GB HDD: 250GB 5400ot/min
- W3N4
- Začátečník

-
- Registrován: 06. srp 2008
Re: mysql - přidání cizího klíče - nový sloupce...
Co kdyz se rozhodnes, ze chces pouzivat jinou databazi? Nejen ze budes asi muset prepsat par sql prikazu, ktere se budou trosku lisit, ale navic budes muset prepsat celou aplikacni logiku.
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
Když se rozhodnu, že to napíšu pro MySQL a pak budu používat Oracle, tak si můžu dát akorát facku. Přinejhorším se prostě upraví třída na volání databáze. Každý má tu svou 
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- W3N4
- Začátečník

-
- Registrován: 06. srp 2008
Re: mysql - přidání cizího klíče - nový sloupce...
A co kdyz budes programovat neco pro klienta, a on se najednou rozhodne, ze nechce mysql?
Celkove vytvaret takhle silnou vazbu mezi tvoji aplikacni logikou a urcitou databazi je povazovano za bad practice, uz z toho duvodu, ze by jsi mel problemy s pouzitim te aplikacni logiky (nebo nejake jeji casti) nekde jinde.
Celkove vytvaret takhle silnou vazbu mezi tvoji aplikacni logikou a urcitou databazi je povazovano za bad practice, uz z toho duvodu, ze by jsi mel problemy s pouzitim te aplikacni logiky (nebo nejake jeji casti) nekde jinde.
- Václav Sedlář
- Žlutá karta Bazar

-
- Registrován: 01. dub 2006
- Bydliště: Liberec
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
taky používám mysql_query ...a co jsem tak sledoval u nás ve škole u kolegů, tak to tak dělají všichni....
ale zpět k mému problému-napadá vás nějaký způsob, jak v dbs nastavit tu automatickou kontrolu data?Protože to řešení co je výše je sice 100% funkční, jenže trochu prasečinka - musí se zjistit datum v dbs, vyhodnotit zda už datum bylo a když jo, tak změnit hodnotu určitých záznamů v dbs....jenže když bude v nějakej den chodit na tu stránku moc lidí a zrovna to bude v to datum, které nepotřebuju, tak se bude zbytečně pořád přistupovat do databáze...
ale zpět k mému problému-napadá vás nějaký způsob, jak v dbs nastavit tu automatickou kontrolu data?Protože to řešení co je výše je sice 100% funkční, jenže trochu prasečinka - musí se zjistit datum v dbs, vyhodnotit zda už datum bylo a když jo, tak změnit hodnotu určitých záznamů v dbs....jenže když bude v nějakej den chodit na tu stránku moc lidí a zrovna to bude v to datum, které nepotřebuju, tak se bude zbytečně pořád přistupovat do databáze...
- Smith
- Pokročilý

- Registrován: 11. úno 2004
- Bydliště: někde u UH
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
a není lepší použít nějaký db layer?Václav Sedlář píše:taky používám mysql_query ...a co jsem tak sledoval u nás ve škole u kolegů, tak to tak dělají všichni....
# Desktop [Ryzen 9 7950X, 128 GB RAM, GeForce GTX 1660 Ti, 4x SSD, 3x Dell UP2716D(A), W11 Pro]
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz
- Václav Sedlář
- Žlutá karta Bazar

-
- Registrován: 01. dub 2006
- Bydliště: Liberec
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
no hlavně já se budu muset smířit s tím co na školním servru je...zatím mi ani neposlali přístupové údaje k DB...jinak ještě sem dostal tip na využití Cronu....tak si to jdu nastudovat...
- Smith
- Pokročilý

- Registrován: 11. úno 2004
- Bydliště: někde u UH
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
to není otázka serveru ... když použiješ třeba dibi, tak je to prostě pár tříd a ušetříš si dost práce.Václav Sedlář píše:no hlavně já se budu muset smířit s tím co na školním servru je...zatím mi ani neposlali přístupové údaje k DB...jinak ještě sem dostal tip na využití Cronu....tak si to jdu nastudovat...
Přes Cron to půjde ... o půlnoci spustíš script a provedeš co potřebuješ.
MD5 není šifrovací funkce, ale hashovací... a mimo to je MD5 kolizní hash, nepoužívat.1Pupik1989 píše:Heslo se normálně šifruje (teda já) ve tvaru "md5(md5(nick).pass)" (úplně přesné to není, mám svou specifickou syntaxi) myslím si, že to je šifrované až dost.
# Desktop [Ryzen 9 7950X, 128 GB RAM, GeForce GTX 1660 Ti, 4x SSD, 3x Dell UP2716D(A), W11 Pro]
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz
- 1Pupik1989
- Začátečník

-
- Registrován: 20. říj 2011
- Bydliště: Dvůr Králové nad Labem
Re: mysql - přidání cizího klíče - nový sloupce...
Já vím, že MD5 tvoří hash, všichni umíme číst z php.net 
A vím, že je i kolizní, proto existuje Solted Hash
A vím, že je i kolizní, proto existuje Solted Hash
CPU: AMD Phenom II x4 955BE @ 4GHz FAN: Arctic Cooling Freezer Xtreme rev.2
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
MB: MSI 760GM-E51
RAM: Kingston 2x4Gb RAM DDR3 1333 @ 1466MHz
GPU: Gigabyte Radeon HD 6850 OC 985/1260MHz
HDD: WD Caviar Green WD10EARX 1TB SATAIII/600, ZDROJ: Fortron FSP550-APN (550W)
- Smith
- Pokročilý

- Registrován: 11. úno 2004
- Bydliště: někde u UH
- Kontaktovat uživatele:
Re: mysql - přidání cizího klíče - nový sloupce...
Když to víš, tak nepiš, že šifruješ do MD5 ... šifra a hash jsou dvě naprosto různé věci.1Pupik1989 píše:Já vím, že MD5 tvoří hash, všichni umíme číst z php.net
A vím, že je i kolizní, proto existuje Solted Hash
salted... solený MD5 je pořád MD5. Kolize neřeší, řeší slabá hesla. Takže v první řadě nepoužívat MD5.
# Desktop [Ryzen 9 7950X, 128 GB RAM, GeForce GTX 1660 Ti, 4x SSD, 3x Dell UP2716D(A), W11 Pro]
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz
# Notebook Dell XPS 13 [i7-7500U, 16 GB RAM, 512 GB SSD, W11 Pro], Apple MacBook Air 13" [M2, 16 GB RAM, 512 GB SSD]
# Home Server [2x E5-2630 v3, 128 GB RAM, WS2019] # Storage Synology DS1815+ [24 TB RAID6], Synology DS1819+ [24 TB RAID6, 10 GbE]
# Samsung Galaxy S23 Ultra # Canon EOS R5, Canon EOS 3, Canonet QL17 G-III, Bronica SQ-A # www.photosmith.cz