Autor | Zpráva | ||
---|---|---|---|
TheTony Profil |
#1 · Zasláno: 9. 9. 2012, 16:25:51
Zdravím,
mám jednu takovou otázku. Mám jistou představu o tom, jak by měla moje stránka vypadat, žel bohu totálně netuším, jak to mám udělat :( Jde mi jednoduše o to, že bych chtěl mít určitou stránku, kde bych měl například 10 inputů (prázdných). Každý ten input by byl v podstatě aktivovaný a volně by se do něj dalo psát. Mě jde o to, aby potom, co do toho inputu někdo (kdokoli, kdo na tu stránku přijde) něco napíše a stiskne například tlačítko "uložit", tak aby se tam ten text v tom inputu uložil a zůstal tam i potom, co se to refreshne, popřípadě zavře a znovu otevře. Díky za jakoukoli radu. |
||
panther Profil |
#2 · Zasláno: 9. 9. 2012, 16:32:37
TheTony:
zadanou hodnotu ulož (třeba do DB) a pak při načtení stránky kontroluj, zda dané pole má nějakou hodnotu v DB či nikoliv. Pokud ano, předvyplň ji do daného pole. |
||
TheTony Profil |
#3 · Zasláno: 9. 9. 2012, 17:18:12
Eh, omlouvám se, ale jsem v tomhle ohledu strašně nezkušený. Mám úplně ten nejhrubší základ:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title>Test</title> </head> <body> 01. <input type="text" id="id_1" style="font-family: Trebuchet MS" size="30"> <br><br> 02. <input type="text" id="id_2" style="font-family: Trebuchet MS" size="30"> <br><br> 03. <input type="text" id="id_3" style="font-family: Trebuchet MS" size="30"> <br><br> 04. <input type="text" id="id_4" style="font-family: Trebuchet MS" size="30"> <br><br> 05. <input type="text" id="id_5" style="font-family: Trebuchet MS" size="30"> <br><br> 06. <input type="text" id="id_6" style="font-family: Trebuchet MS" size="30"> <br><br> 07. <input type="text" id="id_7" style="font-family: Trebuchet MS" size="30"> <br><br> 08. <input type="text" id="id_8" style="font-family: Trebuchet MS" size="30"> <br><br> 09. <input type="text" id="id_9" style="font-family: Trebuchet MS" size="30"> <br><br> 10. <input type="text" id="id_10" style="font-family: Trebuchet MS" size="30"> <br><br> </body> </html> link: http://nch-php.comyr.com/test_page.html Jenže, netuším, jaký typ tlačítka tam mám dát, popřípadě co k němu napsat a nevím, jak donutit po stisknutí tlačítka stránku, aby se mi to uložilo do DB. |
||
panther Profil |
#4 · Zasláno: 9. 9. 2012, 17:20:52
TheTony:
„jaký typ tlačítka tam mám dát“ submit. „jak donutit po stisknutí tlačítka stránku, aby se mi to uložilo do DB.“ zavoláš PHP script ( action u formuláře), který provede zápis do DB.
Nad tím formulářem bude SELECT z DB a budeš jen porovnávat, zda obsahuje nějakou hodnotu pro konkrétní pole ve formuláři kvůli přednastavení již vyplněné hodnoty. |
||
TheTony Profil |
Dobrá, tak zatím to mám nějak takto. Do téhle části mi to je jasné. Ale netuším jak zapojit tu DB.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <meta name="generator" content="PSPad editor, www.pspad.com"> <title>Test</title> </head> <body> <form action="php script" target="_blank"> 01. <input type="text" id="id_1" style="font-family: Trebuchet MS" size="30"> <br><br> 02. <input type="text" id="id_2" style="font-family: Trebuchet MS" size="30"> <br><br> 03. <input type="text" id="id_3" style="font-family: Trebuchet MS" size="30"> <br><br> 04. <input type="text" id="id_4" style="font-family: Trebuchet MS" size="30"> <br><br> 05. <input type="text" id="id_5" style="font-family: Trebuchet MS" size="30"> <br><br> 06. <input type="text" id="id_6" style="font-family: Trebuchet MS" size="30"> <br><br> 07. <input type="text" id="id_7" style="font-family: Trebuchet MS" size="30"> <br><br> 08. <input type="text" id="id_8" style="font-family: Trebuchet MS" size="30"> <br><br> 09. <input type="text" id="id_9" style="font-family: Trebuchet MS" size="30"> <br><br> 10. <input type="text" id="id_10" style="font-family: Trebuchet MS" size="30"> <br><br> <input type="submit" value="Uložit"> </form> </body> </html> a vypadá to takto http://nch-php.comyr.com/test_page.html |
||
panther Profil |
#6 · Zasláno: 9. 9. 2012, 17:58:16
TheTony:
INSERT SELECT + mysql_* funkce (mysql_connect, mysql_query, mysql_fetch_assoc). Tohle by ti mělo pro začátek ke studiu stačit. |
||
TheTony Profil |
Skvělé, díky. Mám jen otázku, už jsem udělal MySQL databázi (jako založil a mám už host, database, name i password.) Pokud jsem pochopil, tak prvně ze všeho musím tu HTML stránku propojit pomocí mysql_connect s tou databází, že? A co poté prosím, bude mi stačit jen takový menší postup v pár bodech xD Prosím pěkně.
Respektive, tento script <?php $link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); if (!$link) { die('Could not connect: ' . mysql_error()); } echo 'Connected successfully'; mysql_close($link); ?> patří do hlavičky? |
||
panther Profil |
#8 · Zasláno: 9. 9. 2012, 18:30:13
TheTony:
„Pokud jsem pochopil, tak prvně ze všeho musím tu HTML stránku propojit pomocí mysql_connect s tou databází, že?“ PHP stránku. HTMl se serverem komunikovat neumí. „A co poté prosím, bude mi stačit jen takový menší postup v pár bodech“ pár bodů, resp. odkazů, máš výše. Případně přidám další, http://www.linuxsoft.cz/article.php?id_article=751 a další články seriálu. „patří do hlavičky?“ ne, do PHP souboru - nejprve bys měl pochopit, jak HTML a PHP funguje. |
||
TheTony Profil |
#9 · Zasláno: 9. 9. 2012, 18:59:42
Ahá super díkes :D Ta česká stránka mi hodně pomohla to víc pochopit, ono je pro mě samo o sobě těžký to pobrat, natož v AJ :D Tak se omlouvám za mojí blbost :D
Takže, dejme tomu, že mám stránku s formulářem, kde mám ty inputy (prázdný). Do například čísla jedna něco napíšu a dám odeslat, tlačítko odeslat mi zavolá PHP script, kterej mi to uloží do DB, pak stránku uzavřu a jakmile ji jednou pak otevřu, tak mi opět script zkontroluje, zda není v DB jedno z těch polí vyplněné a pokud ano, tak ho vyplní, chápu alespoň ten základ? Jen... tu stránku s tím formulářem přece musím mít v HTML stránce. |
||
panther Profil |
#10 · Zasláno: 9. 9. 2012, 19:02:52
TheTony:
„chápu alespoň ten základ?“ ano, přesně tak. „Jen... tu stránku s tím formulářem přece musím mít v HTML stránce.“ HTML kód může být i v PHP souboru. Obráceně (PHP kód v HTML souboru) to však neplatí. |
||
TheTony Profil |
#11 · Zasláno: 9. 9. 2012, 19:19:41 · Upravil/a: TheTony
Jo ták, dobrá děkuji.
A můžu se jen zeptat, pokud bych to chtěl aplikovat na input typu "checkbox", tak stačí jen uložit na DB informace o tom, jestli je zaškrtnutý či ne a potom ji jen vytáhnout a popřípadě přepsat, že? |
||
panther Profil |
#12 · Zasláno: 9. 9. 2012, 21:29:08
TheTony:
„jestli je zaškrtnutý či ne a potom ji jen vytáhnout a popřípadě přepsat, že?“ ano. Ono stačí ukládat pouze zapsané checkboxy, zbytek musí být nezaškrtnutý (logicky). Navíc, na serveru nevíš, které nebyly odeslány (pokud jich nemáš pár a nemůžeš je kontrolovat ručně), nezaškrtnuté checkboxy se v $_POST vůbec neodesílají.
|
||
Časová prodleva: 4 dny
|
|||
TheTony Profil |
#13 · Zasláno: 13. 9. 2012, 21:31:27
panther:
„Nad tím formulářem bude SELECT“ Můžu se jen zeptat... teprve se učím, jak to všechno používat. Ale i přes to mi to nedá, ten Select je vlastně vytáhnutí dat z databáze, když máš "nad tím budeš mít select pro porovnání", jde ten Select vidět? myslím ty informace? Protože bych to měl rád nějak použitelné i po grafické stránce a mít nad těmi inputy ještě viditelný i nějaký text by asi nebylo moc dobré. |
||
panther Profil |
#14 · Zasláno: 13. 9. 2012, 21:37:51
TheTony:
„ten Select je vlastně vytáhnutí dat z databáze“ ano, přesně ten jsem myslel. „jde ten Select vidět? myslím ty informace?“ pokud je vyppíšeš, tak ano. Samotné vytažení dat se provádí na serveru a dokud na serveru nedáš pokyn k jejich vypsání, na výstupu nic nevidíš. Nejprve zkus pochopit (je to nezbytné), kdy se provádí serverové scripty (a databázové dotazy) a kdy se vykresluje web v prohlížeči (+ kdy se vykonávají scripty na klientu, třeba JS). Stejně se tomu pochopení nevyhneš, čím dříve, típ lépe. |
||
Časová prodleva: 12 let
|
0