vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   Stepping through auto-increments one at a time? (https://vborg.vbsupport.ru/showthread.php?t=74888)

Jolten 01-22-2005 06:56 PM

Stepping through auto-increments one at a time?
 
Hi all,

Need a little help please.

I've got a table which I insert data into (via a checkbox/submit):

Table:
id ( int(10) auto-increment PRIMARY)
field1
field2
field3 (curdate)
field4 (curdate + inrement)

Values are inserted via admin interaction and can be inserted at any time. Each row of data should only be available to a query once a certain condition is met.

So if I have a query which stated to only pull results if field 2 = (condition) it limits the results.

I'm query this data and displaying 1 record at a time based on the id field. I've got all this worked out.

This is where I need help.....

What I'd like to do is to add some condition to the query or PHP which states to increment the results by id value. Basically, today show the row with the id of 50 then tomorrow show the row with id 51, then the day after show row 52. Does this make any sense? I just want to step through the id fields using data as it's made available. Since the curdate field of the table will contain the date of whenever the information was inserted, I can't use the curdate field to control this.

Any ideas?

None of this is in a loop. It's a script which should always result in 1 result.

Thanks

Dean C 01-22-2005 07:10 PM

Hmm I kind of understand what you want but it'd help if you provided a better example :)

Jolten 01-22-2005 07:37 PM

Okay. I'm setting a featured image into a table.

This table gets queried and displays the image on the home page.

I want to be able to pick featured images at any time but I do not want the home page image updating immediately after I pick an image. I want to pick 5 images at once then have the query use each image for a day (24 hours).

Something like (and this is just complete guessing)

$dtm=date(Ymd);
$dt = "20050122"; //todays date
while ($results=mysql_fetch_object($query)){

if($dtm ==$dt){

display featured image

}

$dt++
}


BUT, I don't think I need a loop. I could be wrong.

Currently, without a loop, I've got the query working and displaying the last image added to the db table.

Here's what I've got:
Code:

$qrySQL="SELECT field0.*, field1.chrresult, field1.atoconid, field2.intcontid, field2.strimgname, field2.strusrid, field2.strimgtitle
FROM field0, field1, field2
WHERE field1.chrresult = 'y' 
AND field2.intcontid = field1.atoconid
AND field2.strimgname = field0.strimgname
ORDER BY field0.imgid DESC LIMIT 0,1";

$rs0=$DB_site->query($qrySQL);
$row0=mysql_fetch_object($rs0);
$strusrid=$row0->strusrid;
$strimgname =$row0->strimgname;
$fname="./path/$row0->strimgname";
$intcontid=$row0->intcontid;
$imgTitle=$row0->strimgtitle;
$imgID=$row0->atocontid;

field0.imgid is the auto-increment table I want to step through.

I may have had an epiphany. Could I set a small php loop to increment an integer every 24 hours, set a variable for this and then use that for the where clause in the query?

Not sure how I'd write the incrementing loop but that seems like it might work.

Dean C 01-22-2005 07:59 PM

Hmm make an intermediate table:

fimage:
- imageid
- datepicked

When you pick an image, insert it's id and dateline in there. Then on your homepage just have something like:

Code:

SELECT
        imageid
FROM
        fimage
WHERE
        DATEDIFF(current_date, dateline) = 1
LIMIT
      5

Untested ^^

Jolten 01-22-2005 08:43 PM

can you auto-increment a date field in mysql?

Dean C 01-22-2005 09:20 PM

Nope :)

Jolten 01-22-2005 10:01 PM

didn't think so but I did get it sorted :)

I changed the imgid to auto-increment from 20050122 and then set a variable for the current date ($dt=date(Ymd);) in php and simply compared $dt to imgid in the query. This effectively auto-increments the date even though it's not a real date field in mysql.


All times are GMT. The time now is 02:12 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01104 seconds
  • Memory Usage 1,723KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (2)bbcode_code_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (7)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete