Autor | Zpráva | ||
---|---|---|---|
MartanCJ Profil |
#1 · Zasláno: 3. 5. 2009, 10:59:17
Dobrý den, v mysql začínám... Mám do školy vypracovat práci kde do již založené databáze vložím tabulku, vložím tam nějaká data a pak je zobrazím v php tabulce pomocí for... Tabulku sem vytvořil, vložil tam data, ale vypsání mi prostě né a né jít... sedím nad tím už 3 hodiny a žádný návod mi nepomohl... Dékuji za přípradnou pomoc
zde je zatím můj zdroj <?php $con = mysql_connect("localhost","martma08it","martma08it"); if (!$con) { die('Nelze pripojit k dazabazi: ' . mysql_error()); } else echo "Pripojen k databazi"; $spojeni=mysql_select_db(martma08it); mysql_select_db("martma08it", $con); $sql = "CREATE TABLE tbl_lidi ( tbl_lidi_ID int NOT NULL AUTO_INCREMENT, PRIMARY KEY(tbl_lidi_ID), Jmeno varchar(15), Prijmeni varchar(15), Vek int )"; mysql_select_db(martma08it, $con); mysql_query("INSERT INTO tbl_lidi values ('Honza', 'Dub', '14')", $con); mysql_query("INSERT INTO tbl_lidi values ('David', 'Buk', '25')", $con); mysql_query("INSERT INTO tbl_lidi values ('Dežo', 'Toga', '22')", $con); mysql_query($sql,$con) ?> |
||
sicario Profil |
#2 · Zasláno: 3. 5. 2009, 11:08:59
|
||
Philber Profil |
#3 · Zasláno: 3. 5. 2009, 11:14:31 · Upravil/a: Philber
edit:sry
|
||
MartanCJ Profil |
#4 · Zasláno: 3. 5. 2009, 11:34:44
„1) nejprve vkladas data do tabulky a pak i teprve vytvaris, prehod to.“
„2) k vyberu dat z tabulky se v sql pouzivaji kobnstrukce zacinajici na SELECT.“ „3) tady je priklad na vypis dat z db.“ nějak sem tě nepochopil... to mám nejdřív vložit data do tabulky a pak tabulku vytvořit? To je blbost ne? |
||
Nox Profil |
#5 · Zasláno: 3. 5. 2009, 11:43:21
MartanCJ
To $con je docela nadbytečné Proč tam 2x vybíráš databázi? U druhého výběru ti navíc chybí uvozovky A jinak - to chceš vypsat na stejné stránce jako jsi data vkládal? Pak je rozumné to nezadávat takto napevno, ale do pole a vypsat to rovnou z něj $qdata = array( array("Honza", "Dub", "14"), array(... )); $sql = "INSERT INTO tbl_lidi (Jmeno, Prijmeni, Cosi) values "; foreach($qdata as $q) $sql.= "(".implode(",",$q)."),"; $sql = substr($sql,0,-1); mysql_query($sql); echo "<table>"; foreach($qdata as $q) echo "<tr><td>$q[Jmeno]</td><td>$q[Prijmeni]</td><td>$q[Cosi]</td></tr>"; echo "</table>"; Nevbo by to šlo dát rovnou do toho prvního cyklu, jen by se musel (to bude muset každopádně, ale...) ošetřit případ, kdy se data vložit nepovede |
||
MartanCJ Profil |
#6 · Zasláno: 3. 5. 2009, 12:06:01
Omlouvám se, ale nějakej nerozumím... Ono učitel mi to zadal jako první práci s mysql a nijak nám nevysvětlil jak s tím pracovat, že si to máme najít.... Nechápu kam zabudovat těch tvých 9 řádků, dík.
|
||
Nox Profil |
#7 · Zasláno: 3. 5. 2009, 12:18:17
Místo toho druhého select_db až posledního mysql_query
Ale zase abys to nekopíroval bezmyšlenkovitě, ten první řádek si stejně musíš doplnit, ale to je normální pole tak to bys snad zvládnout mohl... většina toho, co tam mám, se netýká mysql ale php, ta první část sestaví dotaz mysql, přičemž využívám tvaru "INSERT INTO table (column1, column2, column3) values (val1,val2,val3),(val1,val2,val3),(val1,val2,val3)" aby to nemuselo být ve třech dotazech |
||
MartanCJ Profil |
#8 · Zasláno: 3. 5. 2009, 12:24:58
<?php
$con = mysql_connect("localhost","martma08it","martma08it"); if (!$con) { die('Nelze pripojit k dazabazi: ' . mysql_error()); } else echo "Pripojen k databazi"; $spojeni=mysql_select_db(martma08it); mysql_select_db("martma08it", $con); $sql = "CREATE TABLE tbl_lidi ( tbl_lidi_ID int NOT NULL AUTO_INCREMENT, PRIMARY KEY(tbl_lidi_ID), Jmeno varchar(15), Prijmeni varchar(15), Vek int )"; $qdata = array( array("Honza", "Dub", "14"), array(... )); $sql = "INSERT INTO tbl_lidi (Jmeno, Prijmeni, Cosi) values "; foreach($qdata as $q) $sql.= "(".implode(",",$q)."),"; $sql = substr($sql,0,-1); mysql_query($sql); echo "<table>"; foreach($qdata as $q) echo "<tr><td>$q[Jmeno]</td><td>$q[Prijmeni]</td><td>$q[Cosi]</td></tr>"; echo "</table>"; mysql_query($sql,$con) ?> pochopil sem to dobře? pokud ano hází to chybu na 22. řádku, $qdata = array( array("Honza", "Dub", "14"), array(... )); Parse error: syntax error, unexpected '.', expecting ')' in /home/martma08it/public_html/mysql.php on line 22 |
||
Alphard Profil |
#9 · Zasláno: 3. 5. 2009, 12:30:37 · Upravil/a: Alphard
MartanCJ:
„pokud ano hází to chybu na 22. řádku, $qdata = array( array("Honza", "Dub", "14"), array(... ));“ Nevidíte ty ...? :-) Nejde to jen zkopírovat. Nox: „většina toho, co tam mám, se netýká mysql ale php“ Právě, pokud MartanaCJ dobře chápu, má za úkol uložit do databáze data a pak je vypsat. Výpis z tabulky: $result = mysql_query("select * from tbl_lidi"); while($line = mysql_fetch_assoc($result)) // závorka doplněna, dík { echo $line['nazev_sloupce']; } |
||
MartanCJ Profil |
#10 · Zasláno: 3. 5. 2009, 12:36:56 · Upravil/a: MartanCJ
Mám je ale vypsat do tabulky :) Sice pomocí příkazu for, ale zas tak bych to nehrotil....
Takže mám teď tu spodní část $qdata = array( array("Honza", "Dub", "14"), array("Pepa", "Buk", "22")); $sql = "INSERT INTO tbl_lidi (Jmeno, Prijmeni, Vek) values "; foreach($qdata as $q) $sql.= "(".implode(",",$q)."),"; $sql = substr($sql,0,-1); mysql_query($sql); echo "<table>"; foreach($qdata as $q) echo "<tr><td>$q[Jmeno]</td><td>$q[Prijmeni]</td><td>$q[Vek]</td></tr>"; echo "</table>"; ale tabulka se vůbec nezobrazí.... |
||
MartanCJ Profil |
#11 · Zasláno: 3. 5. 2009, 13:32:12
Ta tabulka <table> se vůbec nezobrazí, fakt nevím co s tím... to už je skoro beznaděj
|
||
Nox Profil |
#12 · Zasláno: 3. 5. 2009, 13:47:03 · Upravil/a: Nox
Alphard
Mě právě přišlo nelogický je do databáze zapsat a pak je zase z ní dolovat v jednom skriptu, ikdyž je to procvičení mysql, tak mi to asi mohlo dojít. Chtělo by to asi upřesnit zadání, ale spíš asi tvá verze je správně (jen drobnost - u whilu chybí koncová závorka) MartanCJ mysql_query("INSERT INTO tbl_lidi (Jmeno, Prijmeni, Vek) values ('Honza','Dub',14),('Pepa','Buk',22)"); A potom ta další část viz Alphard, samozřejmě to napsal jen zhruba, ale upravit bys to snad měl zvládnout |
||
MartanCJ Profil |
#13 · Zasláno: 3. 5. 2009, 13:54:56
Já ani nevím jak zkotrolovat jestli se to tam zapsalo... říkám, že o mysql nevím skoro nic... vím že se mi v phpmyadmin vytvořila tabulka, ale jestli sou v ní data nevím. Každopádně díky za pomoc :)
|
||
Alphard Profil |
#14 · Zasláno: 3. 5. 2009, 14:01:02
MartanCJ:
Když vůbec netušíte, o co jde, tak bude lepší si to nastudovat a pak na fórum přijít s konkrétním problémem. Začněte tady http://www.linuxsoft.cz/article.php?id_article=337 a pokračujte po díl 42. |
||
MattanCJ Profil * |
#15 · Zasláno: 3. 5. 2009, 16:38:40
Moc rad, ale kdyz dostanu praci ve ctvrtek a zitra odevzdat, tak je to docela na rychlo, tak se snazim jakkoliv do zitra udelat
|
||
MartanCJ Profil |
#16 · Zasláno: 3. 5. 2009, 16:49:14
Koukám a vložilo se to tam... Opravdu netuším proč to není v tabulce...
|
||
MartanCJ Profil |
#17 · Zasláno: 3. 5. 2009, 17:38:00 · Upravil/a: MartanCJ
<?php $con = mysql_connect("localhost","martma08it","martma08it"); if (!$con) { die('Nelze pripojit k dazabazi: ' . mysql_error()); } else echo "Pripojen k databazi"; mysql_select_db("martma08it", $con); $sql = "CREATE TABLE tbl_lidi ( Jmeno varchar(15), Prijmeni varchar(15), Vek int )"; mysql_query("INSERT INTO tbl_lidi (Jmeno, Prijmeni, Vek) values ('Honza','Dub',14),('Pepa','Buk',22)"); ?> Asi už naposledy vás téměr nakolenou prosím jak data která mám již v databázi vložené vepsat do tabulky... Prošel sem spoustu návodů (linuxsoft, diskuze tady na jakpsatweb, tvorba-webu.cz a další) ale ani jeden jsem asi nepochopil nebo mi prostě nefungoval... Data již v databázi jsou zapsána, chybí mi jenom tendle poslední a velmi důležitý krok... |
||
Alphard Profil |
#18 · Zasláno: 3. 5. 2009, 18:12:44
nevím, co nechápeš na [#9]
to echo obal <td> a je to |
||
MartanCJ Profil |
#19 · Zasláno: 3. 5. 2009, 18:25:42
Nevím, asi to píšu blbě a nefunguje mi to... hodíš sem prosím ten příkaz i s tou tabulkou? dík moc...
|
||
Alphard Profil |
#20 · Zasláno: 3. 5. 2009, 18:40:59 · Upravil/a: Alphard
$result = mysql_query("select Jmeno, Prijmeni, Vek from tbl_lidi"); if (!$result) echo mysql_error(); else { echo "<table>"; while($line = mysql_fetch_assoc($result)) { echo "<tr><td>$line[Jmeno]</td></td>$line[Prijmeni]</td><td>$line[Vek]</td></tr>"; } echo "</table>"; } |
||
MartanCJ Profil |
#21 · Zasláno: 3. 5. 2009, 19:19:50 · Upravil/a: MartanCJ
http://student.sps-prosek.cz/~martma08it/mysql.php
divný proč to nemám v tabulce... Jinak ale dík, zatím supr! nic nic, už to mám... strašně díky... nevím jak se odvděčit :) |
||
Časová prodleva: 15 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0