Autor | Zpráva | ||
---|---|---|---|
Michal Sebek Profil |
#1 · Zasláno: 15. 2. 2014, 21:37:34
Na mých stránkách http://oblovky.moxo.cz/ mi nejde menu.
Zdrojový kód: index.php: <?php session_start(); require "priprav-obsah.php"; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title><?php echo $title; ?></title> <style type="text/css" media="all">@import "css/style.css";</style> <link rel="shortcut icon" href="obrazky/favicon.ico" /> <meta name="robots" content="index,follow" /> <meta name="description" content="<?php echo $metapopis; ?>" /> <meta name="keywords" content="<?php echo $klicovaslova; ?>" /> </head> <body> <div id="obalStranky"> <div id="hlavicka"> <div id="logo"> <a href="index.php" /><img src="obrazky/logo.png" /></a> </div> <div id="nadpisy"> <h1>Programování WWW stránek pro úplné začátečníky</h1> <h2>...a statické stránky se změní na dynamické</h2> </div> </div> <div id="stred"> <div id="levySloupec"> <div id="menu"> require "pripojeni.php"; $dotaz='SELECT * FROM texty WHERE zobraz_v_menu="1" order by poradi asc'; $vysledek=mysql_query($dotaz); $zaznam=mysql_fetch_array($vysledek); if($zaznam['nazev']!="") { echo '<a href="index.php?page='.$zaznam['urlnazev'].'"><div class="menuLink">'$zaznam['nazev']'</div></a>'; } </div> </div> <div id="obsah"> <h3><?php echo $nazev; ?></h3> <p><?php echo $text; ?></p> <?php if($_GET['page']=="kontakt"){ require "kontakt.php"; }; if($_GET['page']=="fotogalerie"){ require "fotogalerie.php"; }; if($_GET['page']=="kniha-navstev"){ require "kniha-navstev.php"; }; ?> </div> <div style="clear:both;"></div> </div> <div id="paticka"> Ukázka ke knize: <strong>Programování WWW stránek pro úplné začátečníky</strong> </div> </div> </body> </html> priprav-obsah.php: <?php require "pripojeni.php"; $php=trim(htmlspecialchars(strip_tags($_GET['page']))); if($php=="") { $php="index"; }; $dotaz='SELECT * FROM texty WHERE urlnazev="'.$php.'" and publikovan="1"'; $vysledek=mysql_query($dotaz); $zaznam=mysql_fetch_array($vysledek); if($zaznam['nazev']!="") { $nazev=$zaznam['nazev']; $text=$zaznam['text']; $klicovaslova=$zaznam['klicovaslova']; $title=$zaznam['nazev'].' | Programování WWW stránek pro začátečníky'; $metapopis=$zaznam['metapopis']; }; if($nazev==""){ echo '<html><meta http-equiv="REFRESH" content="0;index.php?page=error404"></html>'; die(); }; ?> pripojeni.php: <?php $host='úmyslně neuvedeno (funguje)'; $uzivatel='úmyslně neuvedeno (funguje)'; $heslo='úmyslně neuvedeno (funguje)'; $databaze='úmyslně neuvedeno (funguje)'; $db = mysql_connect($host, $uzivatel, $heslo) or die('Neda se pripojit k serveru.'); mysql_select_db($databaze ,$db) or die(mysql_error($db)); mysql_query('SET NAMES UTF8'); mysql_query('SET COLLATION_CONNECTION=utf8_czech_ci'); ?> style.css: img{ border:0; } body{ background-color:#dddddd; font-family:Verdana, Geneva, sans-serif; font-size:0.8em; } #obalStranky{ width:800px; margin-left:auto; margin-right:auto; } #hlavicka{ height:157px; background-image:url(../obrazky/hlavicka.png); background-repeat:no-repeat; } #logo{ float:left; padding-top:40px; padding-left:30px; } #nadpisy{ clear:right; float:right; padding-top:40px; padding-right:30px; text-align:right; } h1{ font-size:1em; color:white; } h2{ font-size:0.9em; color:#cccccc; } #stred{ clear:both; min-height:150px; background-color:white; } #levySloupec{ width:200px; float:left; } #menu{ padding:5px; } .menuLink{ background-image:url(../obrazky/menuZnak.png); background-position:center left; background-repeat:no-repeat; padding-top:10px; padding-bottom:10px; padding-left:30px; color:#999; text-decoration:none; } .menuLink:hover{ background-image:url(../obrazky/menuZnakHover.png); text-decoration:underline; color:#333; text-decoration:underline; } #obsah{ width:580px; clear:right; float:right; padding:10px; } #obsah h3{ margin:0; padding:0; color:#077; font-size:1.4em; } #obsah p{ text-align:justify; line-height:20px; padding-top:10px; } #obsah a{ color:#066; text-decoration:underline; } #obsah a:hover{ color:black; text-decoration:none; } #paticka{ clear:both; background-image:url(../obrazky/paticka.png); height:38px; text-align:center; padding-top:20px; color:#dddddd; } #paticka a{ color:#ddd; text-decoration:underline; } #paticka a:hover{ color:fff; text-decoration:none; } .kontaktInput{ padding:5px; border:1px dotted #999; width:250px; margin-bottom:8px; } label{ display:inline-block; width:130px; } .okHlaska{ border:1px solid #060; padding:10px; line-height:20px; background-color:#CFF; text-align:center; color:#060; margin-bottom:8px; } .chybovaHlaska{ border:1px solid #900; padding:10px; line-height:20px; background-color:#FCF; text-align:center; color:#900; margin-bottom:8px; } #obsah .prispevek{ width:570px; margin-left:10px; border:1px solid #999; margin-top:7px; margin-bottom:7px; border-radius:5px; color:#555; } #obsah .horniRadek{ background-color:#ccc; height:20px; border-radius:5px; } #obsah .pridal{ float:left; padding-left:5px; } #obsah .prispevek strong{ color:#222; } #obsah .datum{ text-align:right; float:right; clear:right; padding-right:5px; color:#555; } #obsah .textPrispevku{ padding:8px; color:#333; clear:both; } #obsah .knihanavstev{ text-align:center; margin-top:30px; border-top:1px dotted #999; padding-top:15px; } #obsah .knihanavstev textarea{ height:100px; } #obsah .strankovani{ text-align:center; padding-top:15px; } #obsah .strankovani strong{ color:#066; } #obsah .strankovani a{ color:#555; text-decoration:underline; } #obsah .strankovani a:hover{ color:#000; text-decoration:none; } |
||
juriad Profil |
#2 · Zasláno: 15. 2. 2014, 21:44:49
A jak se to projevuje? Nikdo si to nebude u sebe rozbíhat jen, aby to zjistil.
|
||
Micruss Profil |
A co takhle dát ten php kód do <?php ?>
<?php require "pripojeni.php"; $dotaz='SELECT * FROM texty WHERE zobraz_v_menu="1" order by poradi asc'; $vysledek=mysql_query($dotaz); $zaznam=mysql_fetch_array($vysledek); if($zaznam['nazev']!="") { echo '<a href="index.php?page='.$zaznam['urlnazev'].'"><div class="menuLink">'$zaznam['nazev']'</div></a>'; } ?> (kod) if(....)..... } |
||
Michal Sebek Profil |
#4 · Zasláno: 16. 2. 2014, 09:34:26
Dobře. Teď tam mám
<?php require "pripojeni.php"; $dotaz='SELECT * FROM texty WHERE zobraz_v_menu="1" order by poradi asc'; $vysledek=mysql_query($dotaz); $zaznam=mysql_fetch_array($vysledek); if($zaznam['nazev']!="") { echo '<a href="index.php?page='.$zaznam['urlnazev'].'"><div class="menuLink">'$zaznam['nazev']'</div></a>'; } ?> |
||
juriad Profil |
#5 · Zasláno: 16. 2. 2014, 09:37:17
Chybí ti tam dvě tečky (spojení řetězců).
echo '<a href="index.php?page=' . $zaznam['urlnazev'] . '"><div class="menuLink">' . $zaznam['nazev'] . '</div></a>'; |
||
Michal Sebek Profil |
#6 · Zasláno: 16. 2. 2014, 09:57:29
Chyba opravena ale ukazuje to jen jednu položku v menu i když mám nastavených v databázi pět
|
||
juriad Profil |
OK. Je to kvůli tomu, že voláš mysql_fetch_array jen jednou -> jeden řádek.
require "pripojeni.php"; $dotaz='SELECT * FROM texty WHERE zobraz_v_menu="1" order by poradi asc'; $vysledek=mysql_query($dotaz); while ($zaznam=mysql_fetch_array($vysledek)) { if($zaznam['nazev']!="") { # je tato podmínka nutná? máš v db texty, které mají prázdný název? echo '<a href="index.php?page='.$zaznam['urlnazev'].'"><div class="menuLink">'$zaznam['nazev']'</div></a>'; } } Mimochodem, zvaž použití mysqli, rozšíření mysql bude v budoucnu zrušeno (viz růžová varování v dokumentaci). |
||
Michal Sebek Profil |
#8 · Zasláno: 16. 2. 2014, 10:11:07
Děkuji vše funguje tak jak má.
|
||
Časová prodleva: 10 let
|
0