Autor | Zpráva | ||
---|---|---|---|
Adrián Prelovský Profil |
#1 · Zasláno: 4. 7. 2012, 20:07:23
Zdravím mám toto:
<form action="obsah/events/save.php" method="get"> Titulek:<input type="text" name="titulek" style="width:80%";><br /> Datum:<input type="date" name="datum"> Zkraceny clanek:<input type="text" name="zkracene"> Článek:<input type="text" name="clanek" style="width:600px; height:600px;"> <input type="submit" value="uložit"> save.php <?php require("db.php"); $spojeni = mysql_connect($db_server, $db_user, $db_pass) or Die(mysql_error()); mysql_select_db($db_databaze, $spojeni) or Die(mysql_error()); $titulek = $_GET['titulek']; $datum = $_GET['datum']; $zkracene = $_GET['zkracene']; $clanek = $_GET['clanek']; $sql = "INSERT INTO events (titulek, datum, zkracene, clanek) VALUES ('$titulek','$datum','$zkracene','$clanek')"; $vysledek = mysql_query($sql); if ($vysledek) print "<b> Článek vložen </b>"; else print "<b>Článek nebyl vložen "; echo mysql_error(); mysql_close($spojeni); ?> vypis.php: <?php require("db.php"); $spojeni = mysql_connect($db_server, $db_user, $db_pass) or Die(mysql_error()); mysql_select_db($db_databaze) or Die(mysql_error); $vysledek = mysql_query( "SELECT * FROM events ORDER BY datum DESC LIMIT 0,50", $spojeni); /* Konec přímé práce s databází. */ /* Cyklem procházím řádky výsledku a vytahuju z něj hodnoty do nového pole $zaznam*/ while ($zaznam = mysql_fetch_array($vysledek) ): echo "Titulek: "; echo $zaznam["titulek"]; echo "<br> "; echo "Datum: "; echo $zaznam["datum"]; echo "<br>"; echo "Úryvek: "; echo $zaznam["zkracene"]; echo "<br>"; echo "clanek: "; echo $zaznam["clanek"]; echo "</p>"; endwhile; ?> Můj problém: Chci aby se mi to na stránce vypsalo takto : Titulek: .... Datum: .... Úryvek:... A potom bylo "zobrazit celý článek" ... nevím jak tomu mám udělat URL aby se to vypisovalo z DB (Nejlíp asi) podle ID. Výpis z DB: Struktura tabulky `events` -- CREATE TABLE IF NOT EXISTS `events` ( `id` int(11) NOT NULL auto_increment, `titulek` text NOT NULL, `datum` date NOT NULL default '0000-00-00', `zkracene` text NOT NULL, `clanek` text NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=16 ; Předem díky za rady :). |
||
jenikkozak Profil |
Adrián Prelovský:
„Chci aby se mi to na stránce vypsalo takto : Titulek: .... Datum: .... Úryvek:... "“ Tak ty další položky v souboru vypis.php jednoduše nevypisuj. „nevím jak tomu mám udělat URL aby se to vypisovalo z DB (Nejlíp asi) podle ID.“ echo "<a href='stranka_s_celym_clankem.php?id=$zaznam[id]'>zobrazit celý článek</a>"; A ta stránka stranka_s_celym_clankem.php bude vypadat stejně jako vypis.php, jenom omezíš výpis s databáze na konkrétní položku: "SELECT * FROM events WHERE id=".(int) $_GET["id"] while .
|
||
Adrián Prelovský Profil |
#3 · Zasláno: 5. 7. 2012, 00:22:18
Tak teď už jsem v koncích....
vytvořil jsem si ten stranka_s_celym_clankem.php <?php require("db.php"); $spojeni = mysql_connect($db_server, $db_user, $db_pass) or Die(mysql_error()); mysql_select_db($db_databaze) or Die(mysql_error); $vysledek = mysql_query('SELECT * FROM events WHERE id=".(int) $_GET["id"]$spojeni'); /* Konec přímé práce s databází. */ /* Cyklem procházím řádky výsledku a vytahuju z něj hodnoty do nového pole $zaznam*/ $zaznam = mysql_fetch_array($vysledek) ; echo "Titulek: "; echo $zaznam["titulek"]; echo "<br> "; echo "Datum: "; echo $zaznam["datum"]; echo "<br>"; echo "Článek: "; echo "$zaznam["clanek"]"; echo "<br>"; ?> když to tak mám, tak mi to jednak napíše : Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\ComplexWebServer\http_docs\DRAX\administrace\obsah\events\stranka_s_celym_clankem.php on line 11 a pak to vypíše titulek, datum, článek, ale prázdny. |
||
LaMMa Profil |
Máš zle napísaný dotaz do DB. Naštuduj si aspoň základy práce s reťazcami a potom skús toto:
mysql_connect($db_server, $db_user, $db_pass) or die(mysql_error()); mysql_select_db($db_databaze) or die(mysql_error()); $vysledek = mysql_query("SELECT * FROM `events` WHERE `id`=".(int)$_GET['id']." LIMIT 1") or die(mysql_error()); |
||
jenikkozak Profil |
#5 · Zasláno: 5. 7. 2012, 08:23:07
Adrián Prelovský:
Naivně jsem předpokládal, že soubor stranka_s_celym_clankem.php přejmenuješ tak, jak by ti vyhovovalo. Vynechal jsi naprosté základy PHP, vrať se k nim. Takhle kusy kódu, které tu získáš, nejsi schopen slepit dohromady. |
||
Adrián Prelovský Profil |
#6 · Zasláno: 5. 7. 2012, 10:32:00
jenikkozak:
Ale já tu stránku mám pojmenovanou jinak, ale tady jsem to napsal tak jak to tu napsané bylo;) |
||
Lamicz Profil |
#7 · Zasláno: 5. 7. 2012, 16:41:29
Adrián Prelovský:
mysql_* funkce by se již dnes na nových projektech používat neměly, v PHP "přežívají" jenom díky tomu, že jsou hodně rozšířeny a přestalo by fungovat obrovské množství webů. |
||
Časová prodleva: 11 let
|
0