Jump to content

Munchen

Members
  • Posts

    12
  • Joined

  • Last visited

    Never

Posts posted by Munchen

  1. [!--quoteo(post=332723:date=Jan 3 2006, 01:52 PM:name=Thierry)--][div class=\'quotetop\']QUOTE(Thierry @ Jan 3 2006, 01:52 PM) 332723[/snapback][/div][div class=\'quotemain\'][!--quotec--]

    I am building a user interface PHP website which uses a MSSQL database to store stuff. When I was using Access as my interface, the Access files where only a couple MB, but now the log file has grown to 8Gb! I dont know why, I haven't uploaded 8GB or anything near that at all....

     

    Well, You must have done something ... Remember, in full recovery model, Your logfile(s) will get filled with all Your INSERT, UPDATE & DELETE statements.

    To make Your logfile smaller, You can do some things ...

     

    1: If You dont ever wanna use Your logfile, set the database to Simple Recovery Model.

     

    2: Setup a backup rutine of Your log file, as this will "truncate" Your log.

  2. Ok, here is something i just made ... It does the trick ...

     

    [!--PHP-Head--][div class=\'phptop\']PHP[/div][div class=\'phpmain\'][!--PHP-EHead--]

    [span style=\"color:#0000BB\"]<?php

    $sqlserver [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\".\"[/span][span style=\"color:#007700\"];

    [/span][span style=\"color:#0000BB\"]$sqluser [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"test\"[/span][span style=\"color:#007700\"];

    [/span][span style=\"color:#0000BB\"]$sqlpass [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"test\"[/span][span style=\"color:#007700\"];

     

    [/span][span style=\"color:#0000BB\"]$connection [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]mssql_connect[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$sqlserver [/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$sqluser [/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$sqlpass [/span][span style=\"color:#007700\"]);

    [/span][span style=\"color:#0000BB\"]$max_on_page [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]5[/span][span style=\"color:#007700\"];

     

    function [/span][span style=\"color:#0000BB\"]myLimit[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#DD0000\"]\"\"[/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$mycount[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#DD0000\"]\"\"[/span][span style=\"color:#007700\"]){

                    global [/span][span style=\"color:#0000BB\"]$connection[/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$max_on_page[/span][span style=\"color:#007700\"];

                    if(!empty([/span][span style=\"color:#0000BB\"]$mycount[/span][span style=\"color:#007700\"])){

                            [/span][span style=\"color:#0000BB\"]$query [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"SELECT COUNT(*) FROM news\"[/span][span style=\"color:#007700\"];

                            [/span][span style=\"color:#0000BB\"]$result [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]mssql_fetch_array[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]mssql_query[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$query [/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$connection[/span][span style=\"color:#007700\"]));

                            [/span][span style=\"color:#0000BB\"]$result [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]$result[/span][span style=\"color:#007700\"][[/span][span style=\"color:#0000BB\"]0[/span][span style=\"color:#007700\"]];

                    }

                    else{

                            [/span][span style=\"color:#FF8000\"]// The pagination.

                            [/span][span style=\"color:#007700\"]if([/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"]>[/span][span style=\"color:#0000BB\"]1[/span][span style=\"color:#007700\"])

                            {

                                [/span][span style=\"color:#0000BB\"]$cond[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#DD0000\"]\"max\"[/span][span style=\"color:#007700\"];

                                [/span][span style=\"color:#0000BB\"]$internal [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"];

                            }

                            else

                            {

                                [/span][span style=\"color:#0000BB\"]$cond[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#DD0000\"]\"min\"[/span][span style=\"color:#007700\"];

                                [/span][span style=\"color:#0000BB\"]$internal [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"]*[/span][span style=\"color:#0000BB\"]$max_on_page[/span][span style=\"color:#007700\"];

                            }

     

                            [/span][span style=\"color:#0000BB\"]$query [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"select $cond (t.id) from (select top $internal id from news ORDER BY id) t\"[/span][span style=\"color:#007700\"];

                            [/span][span style=\"color:#0000BB\"]$result [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]mssql_query[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$query[/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$connection[/span][span style=\"color:#007700\"]);

                            [/span][span style=\"color:#0000BB\"]$row [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]mssql_fetch_array[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$result[/span][span style=\"color:#007700\"]);

                            [/span][span style=\"color:#0000BB\"]$maxID [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]$row[/span][span style=\"color:#007700\"][[/span][span style=\"color:#0000BB\"]0[/span][span style=\"color:#007700\"]]; [/span][span style=\"color:#FF8000\"]// max id

                            [/span][span style=\"color:#0000BB\"]$query [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"SELECT TOP \" [/span][span style=\"color:#007700\"]. [/span][span style=\"color:#0000BB\"]$max_on_page [/span][span style=\"color:#007700\"]. [/span][span style=\"color:#DD0000\"]\" * FROM news WHERE id > \'\"[/span][span style=\"color:#007700\"].[/span][span style=\"color:#0000BB\"]$maxID[/span][span style=\"color:#007700\"].[/span][span style=\"color:#DD0000\"]\"\'  ORDER BY id\"[/span][span style=\"color:#007700\"];

                            [/span][span style=\"color:#0000BB\"]$result [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]mssql_query[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$query [/span][span style=\"color:#007700\"], [/span][span style=\"color:#0000BB\"]$connection[/span][span style=\"color:#007700\"]);

                    }

                    return [/span][span style=\"color:#0000BB\"]$result[/span][span style=\"color:#007700\"];

    }

     

    [/span][span style=\"color:#0000BB\"]$posts [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]myLimit[/span][span style=\"color:#007700\"]([/span][span style=\"color:#DD0000\"]\'\'[/span][span style=\"color:#007700\"], [/span][span style=\"color:#DD0000\"]\'1\'[/span][span style=\"color:#007700\"]);

     

    [/span][span style=\"color:#0000BB\"]mssql_close[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$connection[/span][span style=\"color:#007700\"]);

    [/span][span style=\"color:#0000BB\"]?>[/span]

     

      <table width=\"400\" border=\"0\">

       <tr>

        <td width=\"400\" valign=\"top\">

         <h1><font style=\"color:#000000\"><strong> Nyheder & Opdateringer</strong></font></h1>

        </td>

       </tr>

      </table>

    [span style=\"color:#0000BB\"]<?

    $posts [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]myLimit[/span][span style=\"color:#007700\"]([/span][span style=\"color:#DD0000\"]\'\'[/span][span style=\"color:#007700\"], [/span][span style=\"color:#DD0000\"]\'1\'[/span][span style=\"color:#007700\"]);

     

    if(!isset([/span][span style=\"color:#0000BB\"]$news_limit[/span][span style=\"color:#007700\"]))

    {

      [/span][span style=\"color:#0000BB\"]$news_limit[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]5[/span][span style=\"color:#007700\"];

    }

     

    if (empty([/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"])) {

      [/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]0[/span][span style=\"color:#007700\"]; [/span][span style=\"color:#FF8000\"]// Where to start in the list, if nothing\'s specified. Default should be \'0\'

    [/span][span style=\"color:#007700\"]}

     

    [/span][span style=\"color:#0000BB\"]$sql [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#DD0000\"]\"SELECT * FROM nyheder ORDER BY id DESC limit $offset,$news_limit\"[/span][span style=\"color:#007700\"];

    [/span][span style=\"color:#0000BB\"]$sql_result [/span][span style=\"color:#007700\"]= [/span][span style=\"color:#0000BB\"]myLimit[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"], [/span][span style=\"color:#DD0000\"]\'\'[/span][span style=\"color:#007700\"]);

     

            [/span][span style=\"color:#0000BB\"]$pages[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]intval[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$posts[/span][span style=\"color:#007700\"]/[/span][span style=\"color:#0000BB\"]$news_limit[/span][span style=\"color:#007700\"]);

     

            [/span][span style=\"color:#FF8000\"]// $pages now contains int of pages needed unless there is a remainder from division

            [/span][span style=\"color:#007700\"]if ([/span][span style=\"color:#0000BB\"]$posts[/span][span style=\"color:#007700\"]%[/span][span style=\"color:#0000BB\"]$news_limit[/span][span style=\"color:#007700\"]) {

                [/span][span style=\"color:#0000BB\"]$pages[/span][span style=\"color:#007700\"]++;

            }

     

    while([/span][span style=\"color:#0000BB\"]$row[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]mssql_fetch_array[/span][span style=\"color:#007700\"]([/span][span style=\"color:#0000BB\"]$sql_result[/span][span style=\"color:#007700\"]))

    {

    [/span][span style=\"color:#0000BB\"]?>

    [/span]  <table width=\"400\" border=\"0\">

       <tr>

        <td width=\"400\" valign=\"top\">

         <table class=1 cellspacing=0 width=100%>

          <tr>

           <td class=tmain>

            <font style=\"color:#999999\">[span style=\"color:#0000BB\"]<? [/span][span style=\"color:#007700\"]echo [/span][span style=\"color:#0000BB\"]$row[/span][span style=\"color:#007700\"][[/span][span style=\"color:#DD0000\"]\'add_time\'[/span][span style=\"color:#007700\"]]; [/span][span style=\"color:#0000BB\"]?>[/span]</font><br>

            [span style=\"color:#0000BB\"]<? [/span][span style=\"color:#007700\"]echo [/span][span style=\"color:#0000BB\"]$row[/span][span style=\"color:#007700\"][[/span][span style=\"color:#DD0000\"]\'news\'[/span][span style=\"color:#007700\"]]; [/span][span style=\"color:#0000BB\"]?>

    [/span]       </td>

          </tr>

         </table>

        </td>

       </tr>

      </table>

      <br>

    [span style=\"color:#0000BB\"]<?

    [/span][span style=\"color:#007700\"]}

    if([/span][span style=\"color:#0000BB\"]$pages [/span][span style=\"color:#007700\"]> [/span][span style=\"color:#0000BB\"]1[/span][span style=\"color:#007700\"])

    {

     

    [/span][span style=\"color:#0000BB\"]?>

    [/span]        <center>

    [span style=\"color:#0000BB\"]<?

    [/span][span style=\"color:#007700\"]echo [/span][span style=\"color:#DD0000\"]\"Side [\"[/span][span style=\"color:#007700\"];

    for ([/span][span style=\"color:#0000BB\"]$i[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]1[/span][span style=\"color:#007700\"];[/span][span style=\"color:#0000BB\"]$i[/span][span style=\"color:#007700\"]<=[/span][span style=\"color:#0000BB\"]$pages[/span][span style=\"color:#007700\"];[/span][span style=\"color:#0000BB\"]$i[/span][span style=\"color:#007700\"]++) {

      [/span][span style=\"color:#0000BB\"]$newoffset[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]$news_limit[/span][span style=\"color:#007700\"]*([/span][span style=\"color:#0000BB\"]$i[/span][span style=\"color:#007700\"]-[/span][span style=\"color:#0000BB\"]1[/span][span style=\"color:#007700\"]);

      if ([/span][span style=\"color:#0000BB\"]$offset[/span][span style=\"color:#007700\"]==[/span][span style=\"color:#0000BB\"]$newoffset[/span][span style=\"color:#007700\"]) {

       print ([/span][span style=\"color:#DD0000\"]\" <b>$i</b> \"[/span][span style=\"color:#007700\"]);

      }

      else {

       print [/span][span style=\"color:#DD0000\"]\"<a href=\\"[/span][span style=\"color:#0000BB\"]$PHP_SELF[/span][span style=\"color:#007700\"]?[/span][span style=\"color:#0000BB\"]offset[/span][span style=\"color:#007700\"]=[/span][span style=\"color:#0000BB\"]$newoffset[/span][span style=\"color:#007700\"]&[/span][span style=\"color:#FF8000\"]#092;\">$i</a>\n\";

      [/span][span style=\"color:#007700\"]}

      }

      echo [/span][span style=\"color:#DD0000\"]\"]\n\"[/span][span style=\"color:#007700\"];

     

    [/span][span style=\"color:#0000BB\"]?>

    [/span]        </center>

    [span style=\"color:#0000BB\"]<?

    [/span][span style=\"color:#007700\"]}

    [/span][span style=\"color:#0000BB\"]?>[/span]

    [/span][!--PHP-Foot--][/div][!--PHP-EFoot--]

     

    Oh, and here is the test table I made to demonstrate it:

    if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[news]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
    drop table [dbo].[news]
    GO
    
    CREATE TABLE [dbo].[news] (
    [id] [int] IDENTITY (1, 1) NOT NULL ,
    [add_time] [datetime] NULL ,
    [news] [varchar] (50) COLLATE Danish_Norwegian_CI_AS NULL 
    ) ON [PRIMARY]
    GO
    
    ALTER TABLE [dbo].[news] WITH NOCHECK ADD 
    CONSTRAINT [DF_news_add_time] DEFAULT (getdate()) FOR [add_time]
    GO
    
    

     

    Let me know if it works for You :)

  3. Ahh, so true, MS SQL does not have such a funtion. I made it once (PHP wise) and I will try to find it for You :)

     

     

    Thanks for the reply Munchen...

     

    well.. um.. pagination ?  IE:

     

    Page |< << 1 >>[2][3][4][5][6] |>

     

    Something like that

    There are so many MySQL scripts.. but MSsql does NOT support the Limit condition. 

     

    I think TOP has to be used .. but im not sur ehow.. and I was hoping that someone had a script a function or something that I could use or at least get some idears from!!!

     

    Thanks again for your reply!

    307852[/snapback]

     

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.