За последние 24 часа нас посетили 16632 программиста и 1620 роботов. Сейчас ищет 1851 программист ...

ух уж мои кривые руки!

Тема в разделе "PHP для новичков", создана пользователем cleric-88, 1 сен 2010.

  1. cleric-88

    cleric-88 Активный пользователь

    С нами с:
    12 июл 2010
    Сообщения:
    40
    Симпатии:
    0
    Второй день бодаюсь с выводом меню из базы вот подошел к заключительному этапу..
    Значит так, пункты меню выводятся, специальный класс для активного пункта меню тоже присваивается, НО не выводится никакая информация а именно - текст, заголовок, ключевые слова дескрипшион, попытался сделать чтобы пункт меню - ГЛАВНАЯ - по умолчанию выводил информацию если не кликать на этот пункт (то есть перешли не по ссылке с передаваемым параметром id через браузерную строку), так вообще теперь выскакивает ошибка такого простого рода:

    Parse error: syntax error, unexpected '{' in /var/www/u0938907/data/www/prostodub.ru/index.php on line 4

    вот этот код страницы index.php:

    <?php
    include ("db_connect.php");
    if (!isset($_GET['id'])
    {
    echo '$result = mysql_query ("SELECT * FROM top_menu WHERE id=\'1\'",$db)';
    }
    else
    {
    echo '$result = mysql_query ("SELECT * FROM top_menu WHERE id=\'$id\'",$db)';
    }
    $myrow = mysql_fetch_array ($result);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title></title>
    <meta name="title" content="<?php $myrow["title"];?>" />
    <meta name="keywords" content="<?php $myrow["meta_k"];?>" />
    <meta name="description" content="<?php $myrow["meta_d"];?>" />
    <link rel="stylesheet" href="style.css" type="text/css" media="screen, projection" />
    </head>

    вот код вывода меню:

    <?php
    $result = mysql_query ("SELECT * FROM top_menu",$db);

    if (!isset($id)){$id=1;}
    while ($myrow = mysql_fetch_array ($result))
    {
    if ($id==$myrow['page'])
    {
    $c = " class='focus'";
    }
    else
    {
    $c = null;
    }
    echo "<td".$c."><a href='wiev_top_menu.php?id=".$myrow['id']."'>".$myrow['title']."</a></td>";
    }

    ?>

    а вот код страницы которая отвечает за вывод информации по пунктам меню по id:

    <?php
    include ("db_connect.php");
    if (isset($_GET['id'])){$id = $_GET['id'];}
    $result = mysql_query ("SELECT * FROM top_menu WHERE id='$id'",$db);
    $myrow = mysql_fetch_array ($result);
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title></title>
    <meta name="title" content="<?php $myrow["title"];?>" />
    <meta name="keywords" content="<?php $myrow["meta_k"];?>" />
    <meta name="description" content="<?php $myrow["meta_d"];?>" />
    <link rel="stylesheet" href="style.css" type="text/css" media="screen, projection" />
    </head>

    <body>

    <div id="wrapper">

    <div id="header">
    <table width="1010px" height="393px" cellpadding="0" cellspacing="0">
    <tr>
    <td class="head"></td>
    </tr>
    <tr>
    <td class="top">
    <table class="top_menu" cellpadding="0" cellspacing="0">
    <tr>
    <?php
    include ("top_menu.php");?>
    </tr>
    </table>
    </td>
    </tr>
    </table>
    </div><!-- #header-->

    <div id="middle">

    <div id="container">
    <div id="content">
    <?php $myrow["text"];?>
    </div><!-- #content-->
    </div><!-- #container-->


    <?php include ("sidebar.php");?>


    </div><!-- #middle-->

    <?php include ("footer.php");?>

    </div><!-- #wrapper -->

    </body>
    </html>
    cleric-88 на форуме Добавить отзыв для cleric-88 Пожаловаться на это сообщение Редактировать/удалить сообщение
     
  2. cleric-88

    cleric-88 Активный пользователь

    С нами с:
    12 июл 2010
    Сообщения:
    40
    Симпатии:
    0
    доставил скобку пропущенную if (!isset($_GET['id'])-)- (как я её не увидел???) создал .htaccess и в нем прописал php_flag register_globals off, а потом поменял в нужном месте на $id = intval($_GET['id']);

    Итог сайт появился но поплыл, вывелся кусок php кода в верху сайта

    вот ссылка на сайт prostodub.ru
     
  3. cleric-88

    cleric-88 Активный пользователь

    С нами с:
    12 июл 2010
    Сообщения:
    40
    Симпатии:
    0
    Исправил

    $result = mysql_query ("SELECT * FROM top_menu WHERE id='1'",$db);
    вместо
    echo '$result = mysql_query ("SELECT * FROM top_menu WHERE id=\'1\'",$db)';
    стало намного лучше но информация из базы не подставляется никуда почемуто...
    что делать то с этим?
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    это тонкий троллинг?
     
  5. cleric-88

    cleric-88 Активный пользователь

    С нами с:
    12 июл 2010
    Сообщения:
    40
    Симпатии:
    0
    к троллингу здесь ничего не относится
     
  6. engager

    engager Активный пользователь

    С нами с:
    21 янв 2009
    Сообщения:
    1.106
    Симпатии:
    1
    мимо твиттера промахнулся?)
    для начала, оформи пхп-код в своем первом посте по-человечески (есть специальный тэг PHP на этом форуме).
    нихрена же не понятно.
     
  7. cleric-88

    cleric-88 Активный пользователь

    С нами с:
    12 июл 2010
    Сообщения:
    40
    Симпатии:
    0
    Все заработало, спасибо.
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    =) обращайтесь!
     
  9. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Волшебное оформление решает вопрос =)