ФорумПрограммированиеPHP для идиотов → как правельно составить sql запрос

как правельно составить sql запрос

  • hilton_413

    Сообщения: 38 Репутация: N Группа: Кто попало

    Spritz 4 февраля 2012 г. 19:57

    Приветы…
    Помогите составить sql запрос…
    index.php подгружает менюшку из базы,
    a также Ajax-сом контент..
    меню и контент в разных таблицах.

    Так вот вопрос: по моему мнению дважды обращаться к базе не разумно (?)
    поэтому может лучше подгрузить меню и контент ajax-сом.

    index.php



    <?php
    //session start ();
    include_once "../scr/sqldb.php";
    $sql = "SELECT name, pos
    FROM menu
    WHERE lang = 'ru'
    LIMIT 0 , 10";
    $res = mysql_query($sql);
    $rows = mysql_num_rows($res);
    //Create menu links
    $x=0;
    for($x < $rows; $row[] = mysql_fetch_assoc($res);$x++ ){
    $link[] = "\t<a href='#' class='menu_cl' name='{$row[$x]['pos']}'>{$row[$x]['name']}</a>";
    }//Links created
    mysql_free_result($res);
    mysql_close($connect_db);
    ?><!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta charset="utf-8" />
    <!–[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]–>
    <title></title>
    <meta name="keywords" content="" />
    <meta name="description" content="" />
    <link rel="stylesheet" href="http://<?=$_SERVER['SERVER_NAME']?>/css/style.css" type="text/css" media="screen, projection" />
    <script type="text/javascript" src="http://<?=$_SERVER['SERVER_NAME']?>/scr/lib/jquery-1.3.2.min.js"></script>
    <script type="text/javascript" src="http://<?=$_SERVER['SERVER_NAME']?>/scr/lib/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="http://<?=$_SERVER['SERVER_NAME']?>/scr/.ajax.js"></script>
    </head>
    <script type="text/javascript">
    $(document).ready(function(){
    $("#preloader").append("<img src = '/css/loader.png' alt = 'Загрузка…' id='loading' />");
    $("body").fadeIn(800);
    $(".langs_cl").click(function(){
    $("body").fadeOut(800,function(){
    window.location = "../fi";
    });
    });
    //menu clicked
    $(".menu_cl").click(function(){
    $("#preloader").show();
    ajaxContent(page = $(this).attr("name"));
    });
    //AJAX RUN
    function ajaxContent(){
    $.ajax({
    global: false,
    cache:false,
    type: "POST",
    url: "../scr/ajax.php",
    data: "page="+page,
    dataType: "html",
    success: function(data){
    //$("#cont").html(msg );
    $("#cont").html(data);
    $("#preloader").hide();
    }
    });
    };
    ajaxContent(page = "home");
    //AJAX END
    });//END
    </script>
    <body>
    <div id="wrapper">
    <header id="header">
    <div id="logo_d">
    <a id="logo_p" href="http://<?= $_SERVER['SERVER_NAME']?>">
    <img src="http://<?= $_SERVER['SERVER_NAME']?>/css/1123.png" />
    </a>
    </div>
    <div id="langs">
    <a href="#">
    <img class="langs_cl" src="http://<?=$_SERVER['SERVER_NAME']?>/css/fi.png" alt='Suomeksi'/></a>
    </div>
    <div id="name_d">
    </div>
    <div id="menu">
    <?php
    // PRINT RUS MENU
    foreach($link as $key => $val){echo "\t{$val}\n";}
    ?>
    </div>
    </header><!– #header–>
    <section id="middle">
    <div id="container">
    <div id="content"><br /><br />
    <!– ajax content + preloader picture –>
    <div id="preloader"></div>
    <div id="cont"></div>
    <!– END ajax content + preloader picture –>
    </div><!– #content–>
    </div><!– #container–>
    <aside id="sideRight">
    <strong>Фотоггалерея</strong>
    </aside><!– #sideRight –>
    </section><!– #middle–>
    </div><!– #wrapper –>
    <footer id="footer">
    <strong>Footer:</strong>
    </footer><!– #footer –>
    <div id="bgfooter"></div>
    </body>
    </html>



    ajax.php

    <?php
    if($_SERVER['REQUEST_METHOD'] === 'GET'){
    header("Location : http://".$_SERVER['SERVER_NAME']);
    exit;
    }else{
    //BUG : ПРОВЕРКУ НА POST ЗАПРОС
    $link = $_POST["page"];
    //BUG : ПРОВЕРКУ НА POST ЗАПРОС
    include_once "sqldb.php";

    $sql = "SELECT content
    FROM content
    WHERE PAGE = '$link'
    LIMIT 0 , 30";

    $res = mysql_query($sql);
    $row = mysql_fetch_assoc($res);
    echo $row['content'];
    }
    mysql_free_result($res);
    mysql_close($connect_db)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 4 февраля 2012 г. 20:12, спустя 15 минут 4 секунды

    ой блядь :)
    Сапожник без сапог
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz 4 февраля 2012 г. 20:16, спустя 3 минуты 39 секунд

    Так вот вопрос: по моему мнению дважды обращаться к базе не разумно (?)
    поэтому может лучше подгрузить меню и контент ajax-сом.

    разумно. грузи всё сразу, не еби мозг
    не всё полезно, что в swap полезло
  • hilton_413

    Сообщения: 38 Репутация: N Группа: Кто попало

    Spritz 5 февраля 2012 г. 18:29, спустя 22 часа 13 минут 15 секунд


    ой блядь :)

    Сила слова: 1.72
    Маловато будет :))


    master,
    СПС.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 февраля 2012 г. 19:24, спустя 55 минут

    Маловато будет :))

    количество сообщений глянь.

    так толсто аж тонко
    Сапожник без сапог
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 5 февраля 2012 г. 20:43, спустя 1 час 18 минут 20 секунд

    количество сообщений глянь.

    один флуд
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz 5 февраля 2012 г. 21:23, спустя 39 минут 58 секунд

    нет, всё правильно, сила слова 1.72, много сообщений, за них много кармы, только не учтено время ))

Пожалуйста, авторизуйтесь, чтобы написать комментарий!