Autor | Zpráva | ||
---|---|---|---|
lopuch Profil * |
#1 · Zasláno: 1. 3. 2010, 15:53:34
Dobrý den,
chtěl bych poprosil o radu. Snažím se vytvořit jednoduchý redakční systém, který by dokázal editovat jednotlivé záznamy v databázi. Bohužel jsem narazil na menší problém. Když kliknu na položku editovat tak se mi zobrazí pouze bílá stránka, ale já bych potřeboval aby se tam zobrazil třeba nadpis konkrétního záznamu. Následní editace záznamů není problém, ale jen jak na tu stránku např: http://localhost/redakce/redakce.php?clanek=redakce&id=1 zobrazit požadovaný text. Děkuji za pomoc. <?php session_start(); include "connect2.php"; //pokud máme globální proměnnou nastavenou na ano, jsme úspěšně přihlášeni //a můžeme pracovat. if($_SESSION['rovnase']=='ano') { echo "<table>"; echo "<tr><td>"; echo "Jste úspěšně přihlášeni jako <b>".$_SESSION['jmeno']."</b>"; echo "</td>"; echo "<td>"; echo "<form action='' method='post'>"; echo "<input type='submit' name='odhlas' value='Odhlasit se'>"; echo "</form>"; echo "</td></tr></table>"; } else { echo "Ne něco je špatně"; header("location: admin.php"); } //provedeme odhlaseni uživatele if(empty($_POST['odhlas'])) { $_POST['odhlas']=NULL; } else { $_SESSION['rovnase']='ne'; header("location: admin.php"); } ?> <!-- MENU--> <a href="uvodni_stranka.php">Úvodní stránka</a> | <a href="#">Informace pro rodiče</a> | <a href="#">Kalendář akcí</a> | <a href="#">Jídelníček</a> | <!-- OBSAH STRÁNKY --> <H1>Úvodní stránka</H1> <?php //do promenne sql ulozime obsah tabulky uvodni $sql = mysql_query("SELECT * FROM uvodni")or die(mysql_error()); if(!isset($clanek)) { //while cyklem projdeme obsah promenne sql a zobrazime jeji obsah while($row = mysql_fetch_array($sql)) { $id=$row["id_uvodni"]; echo "<a href=\"redakce.php?clanek=redakce&id=$id\">Editace</a>"; echo " | "; echo "<a href=\"redakce.php?clanek=redakce&id=$id\">Smazat</a>"; echo "<br />"; echo $row['nadpis']."<br />"; echo $row['datum']."<br />"; echo "<b>".$row['vytvoril']."</b><br />"; echo $row["obsah"]; echo "<br /><br />"; } } if($_GET["clanek"]=="redakce") { echo "toho je první záznam"; } ?> |
||
Beavis Profil |
#2 · Zasláno: 1. 3. 2010, 15:56:18
lopuch:
Myslíte stránkování? |
||
lopuch Profil * |
#3 · Zasláno: 1. 3. 2010, 16:00:29
Nevím jestli je to ono, ale prostě když kliknu na položku editovat tak aby se mi zobrazil text co je v databázi, který odpovídá tlačítku na které jsem právě kliknul.
|
||
Beavis Profil |
#4 · Zasláno: 1. 3. 2010, 16:14:46 · Upravil/a: Beavis
lopuch:
Aha. Soubor edit.php: ... $id =$ _GET["id"]; ... SELECT * FROM tabulka WHERE id = '$id' Nejsem doma, takže se omlouvám za chybějící apostrofy (resp. ty SQL apostrofy) - (mám tu FR klávesnici) Předpokládám že se zbytkem už si poradíte : )) |
||
lopuch Profil * |
#5 · Zasláno: 1. 3. 2010, 16:23:46
Asi už jste mě trošku nakopnul, jen trošku zádrhel, jak do proměnné uložím hodnotu konktétního záznamu ( id ) když kliknu na položku editovat. Potom bych to řešil asi takto: jak budu vědět id uložím ho do globální proměnné, vytvořím soubor edit.php a při selectu zadam do where id = $_sesssion['id']. Mohlo by to tak být?
|
||
lopuch Profil * |
#6 · Zasláno: 1. 3. 2010, 16:38:56
Ještě možná pro upřesnění problému:
Mám dejme tomu dva záznamy v databázi: id, nadpis, autor, datum a obsah. u každého takto zobrazeného záznamu mám položku editovat a smazat. Pokud kliknu na položku editovat, otevře se mi stránka kde se mi obsah vypíše do textboxů a já ho budu moci editovat - vypsání do textboxů a editace zvládnu, jen to zobrazená mi dělá trošku problem:-/. jak vypadá výpis na stránce: Editace | Smazat Prvni clanek 2010-03-01 ondra dffdsdsdfdfdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd Editace | Smazat Druhý článek 2010-03-02 ondra rrrrrrrrrrrrrrrrrrrrrrrrrrrrreeeeeeeeeeeeeeeeeeeessssssssssssssssssssssss |
||
Beavis Profil |
#7 · Zasláno: 1. 3. 2010, 17:00:49
lopuch:
Tak ve výpisu dát : .. $id = $row['id']; echo " <a href=\"edit.php?id=". $id ."\">Editovat</a>"; .. Ne session['id'] ale $_GET['id'] - pokud dáte edit.php?id=2 vytáhne se Vám článek s id 2. Poté načtete data do pole, <textarea name="text"><?php echo $row['text'] ?> </textarea>. |
||
Časová prodleva: 14 let
|
0