vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.0 Beta Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=34)
-   -   vB Pager 2.0.4 (https://vborg.vbsupport.ru/showthread.php?t=72823)

TwinsX2Dad 12-23-2004 05:35 PM

Well, here might be an issue - a DB error:

Code:

Database error in vBulletin 3.0.3:

Invalid SQL: UPDATE user set vb3_pager = pager + 1 where userid = 2
mysql error: Table 'mydatabase_forums.user' doesn't exist

mysql error number: 1146

Date: Thursday 23rd of December 2004 12:12:20 PM
Script: http://www.mydomain.net/forums/pager.php
Referer: http://www.mydomain.net/forums/pager.php?action=pager&do=newpager&touserid=2
Username: Member
IP Address: 00.000.00.00

Could this be something?

Please see two previous posts, as well

docvader 12-23-2004 07:45 PM

Your user table doesn't exist in your vbulletin SQL? Are you sure? Have you looked in phpMyAdmin to see if it's there? I never got this error with this hack.

docvader 12-24-2004 02:45 AM

Quote:

Uae, one other thing. Not sure if it's just sloppy editing on my part, but, I figured out, with the help of some of the digital masters on this board, where my member profile issue is.

Altering the /includes/functions_online.php file caused my member profile link to crash, ie, one could not view individual member profiles. Not sure if anyone else has noticed or experienced this, but, it's something to keep an eye out for.

I tried editing that file again, with no success. What's your take on this? Any ideas where it might be triggering problems?

rich
Sorry. My mistake. I added the bottom edit of /includes/functions.php to /includes/functions_online.php. These html install things are sometimes tricky to see (a plain text file with all the template and file edits, though not as professional looking, or nice, seem to be more effective and easier to work with, in my opinion, especially if you have to go back and dig around in them.)

Board's working fine. Waiting for a work around with the persistent pager pop up. Wish I new more about this stuff to help.

rich

TwinsX2Dad 12-24-2004 05:06 AM

Quote:

Originally Posted by docvader
Your user table doesn't exist in your vbulletin SQL? Are you sure? Have you looked in phpMyAdmin to see if it's there? I never got this error with this hack.

'mydatabase_forums.user' doesn't exist.
'mydatabase_forums.vb3_user' does.

I have table prefixes.

docvader 12-24-2004 06:04 AM

Understand. Just curious, could you solve the problem by adding "TABLE_PREFIX" labels to his pager.php code, in the relevant places? Doesn't look like they're all there, from my quick perusal. I'm far from a whiz when it comes to databases, but you seem to be pretty savvy about it. Just curious about this.

TwinsX2Dad 12-24-2004 03:04 PM

Databases, I am not too bad on. It is php calls to a database where I have troubles. Yet I am not certain my problem lies within pager.php - here is my file:

Code:

<?php
/*======================================================================*\
|| #################################################################### ||
|| # ---------------------------------------------------------------- # ||
|| #            vB Pager Version 2.0.2 for vBulletin 3.0.1 or Above              # ||
|| #                      by [WwW.UAEWEB.COM]                                  # ||
|| # ---------------------------------------------------------------- # ||
|| #        Copyright ?2000?2004 WwW.UAEWEB.COM All Rights Reserved.      # ||
|| # This file may not be redistributed in whole or significant part. # ||
|| #################################################################### ||
\*======================================================================*/

// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

$templatesused='vbpager';

// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array('vbpager');


// ######################### REQUIRE BACK-END ############################
require_once('./global.php');
global $vboptions;

// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################

// Start of Pager LOG
if ($do=='log')
 {

// Pager inbox
        if ($folder=='inbox')
        {
                $show[inbox]        = 1;               
                       
// Delete Pager
                globalize($_POST, array('dowhat', 'pagerno'));
               
                if ($dowhat=="del")
                {
        if (!is_array($pagerno))
        {
          $idname = "Pager ID";
          eval(print_standard_error('invalidid'));
        }

        $messageids = array();
        foreach (array_keys($pagerno) AS $pmid)
        {
                $pmid = intval($pmid);
                $messageids["$pmid"] = $pmid;
        }
                $pagerids = implode(', ', $messageids);

        $DB_site->query("update " .  TABLE_PREFIX . "pager set delread=1 where pagerid in ($pagerids)");
               
                }
// Delete Pager


// Pager NavPage

        $tmpsql = $DB_site->query_first("select count(*) as totpager from " .  TABLE_PREFIX . "pager as p left join " .  TABLE_PREFIX . "user as u on (p.fromuserid=u.userid) where touserid=" . $bbuserinfo[userid] . " and delread=0 and active=0");

        $totalpager = $tmpsql[totpager];

  if (!isset($perpage))
        $perpage=$vboptions[vbpager_message_perpage];

        $pagenumber=$page;
    if ((!isset($pagenumber) or $pagenumber==0) and $pagenumber!="lastpage")
        $pagenumber=1;

  $limitlower=($pagenumber-1)*$perpage+1;
  $limitupper=($pagenumber)*$perpage;

// Pager NavPage
               

                $sql = "select pagerid, fromuserid, username, message, msgdate, deliverdate, hidden, delread, active  from " .  TABLE_PREFIX . "pager as p left join " .  TABLE_PREFIX . "user as u on (p.fromuserid=u.userid) where touserid=" . $bbuserinfo[userid] . " and delread=0 and active=0 order by deliverdate desc LIMIT " . ($limitlower-1) . ", $perpage";

  if ($limitupper>$totalpager)
        {
      $limitupper=$totalpager;
    if ($limitlower>$totalpager)
      $limitlower=$totalpager-$perpage;
        }
 

  $pagenav = construct_page_nav($totalpager,"pager.php?action=pager&do=log&folder=inbox&perpage=$perpage");
 

                $result = $DB_site->query($sql);
                        $i = 0;
                while ($pagerinfo=$DB_site->fetch_array($result))
                {
                        $i++;

                        if (!($pagerinfo[username]))
                          $pagerinfo[username] = $vbphrase['guest'];
                        if ($pagerinfo[hidden])
                          $pagerinfo[username] = $vbphrase['vbpager_nat'];

                          $pagerinfo[deliverdate] = vbdate($vboptions['dateformat'], $pagerinfo[deliverdate], true) . " " . vbdate($vboptions['timeformat'], $pagerinfo[deliverdate]);
                       
                          $pagerinfo[msgdate] = vbdate($vboptions['dateformat'], $pagerinfo[msgdate], true) . " " . vbdate($vboptions['timeformat'], $pagerinfo[msgdate]);

        eval('$pagerinbox .= "' . fetch_template('vbpager_listbit') . '";');

                }

        }
// Pager outbox
        elseif ($folder=='outbox')
        {
                $show[outbox]        = 1;               

// Delete Pager
                globalize($_POST, array('dowhat', 'pagerno'));
               
                if ($dowhat=="del")
                {
        if (!is_array($pagerno))
        {
          $idname = "Pager ID";
          eval(print_standard_error('invalidid'));
        }

        $messageids = array();
        foreach (array_keys($pagerno) AS $pmid)
        {
                $pmid = intval($pmid);
                $messageids["$pmid"] = $pmid;
        }
                $pagerids = implode(', ', $messageids);

                $DB_site->query("update " .  TABLE_PREFIX . "pager set delsent=1 where pagerid in ($pagerids)");


                        $result = $DB_site->query("select touserid, count(*) as totpager from " .  TABLE_PREFIX . "pager where active=1 and touserid is not NULL and pagerid in ($pagerids) group by touserid");
                        while ($sql = $DB_site->fetch_array($result))
                                if ($sql[totpager])
                          $DB_site->query("UPDATE " .  TABLE_PREFIX . "user set pager = pager - " . $sql[totpager] . " where userid = " . $sql[touserid] );
                                       
                }
// Delete Pager


// Pager NavPage
       
        $tmpsql = $DB_site->query_first("select count(*) totpager from " .  TABLE_PREFIX . "pager as p left join " .  TABLE_PREFIX . "user as u on (p.touserid=u.userid) where fromuserid=" . $bbuserinfo[userid] . " and delsent=0");

        $totalpager = $tmpsql[totpager];

  if (!isset($perpage))
        $perpage=$vboptions[vbpager_message_perpage];

        $pagenumber=$page;
    if ((!isset($pagenumber) or $pagenumber==0) and $pagenumber!="lastpage")
        $pagenumber=1;

  $limitlower=($pagenumber-1)*$perpage+1;
  $limitupper=($pagenumber)*$perpage;

// Pager NavPage

        $sql = "select pagerid, parentpid, fromuserid, username, message, msgdate, deliverdate, hidden, delread, active  from " .  TABLE_PREFIX . "pager as p left join " .  TABLE_PREFIX . "user as u on (p.touserid=u.userid) where fromuserid=" . $bbuserinfo[userid] . " and delsent=0 order by msgdate desc LIMIT " . ($limitlower-1) . ", $perpage";

  if ($limitupper>$totalpager)
        {
      $limitupper=$totalpager;
    if ($limitlower>$totalpager)
      $limitlower=$totalpager-$perpage;
        }

  $pagenav = construct_page_nav($totalpager,"pager.php?action=pager&do=log&folder=outbox&perpage=$perpage");

                $result = $DB_site->query($sql);
                        $i = 0;
                while ($pagerinfo=$DB_site->fetch_array($result))
                {
                        $i++;

                        if (!($pagerinfo[username]))
                          $pagerinfo[username] = $vbphrase['guest'];
                        if ($pagerinfo[parentpid])
                                if ($DB_site->query_first("select * from " .  TABLE_PREFIX . "pager where pagerid=". $pagerinfo[parentpid] ." and hidden=1"))
                          $pagerinfo[username] = $vbphrase['vbpager_nat'];
                                if ($pagerinfo[deliverdate])
                          $pagerinfo[deliverdate] = vbdate($vboptions['dateformat'], $pagerinfo[deliverdate], true) . " " . vbdate($vboptions['timeformat'], $pagerinfo[deliverdate]);
                                else
                          $pagerinfo[deliverdate] = $vbphrase['vbpager_not_read'];
                       
                          $pagerinfo[msgdate] = vbdate($vboptions['dateformat'], $pagerinfo[msgdate], true) . " " . vbdate($vboptions['timeformat'], $pagerinfo[msgdate]);

        eval('$pageroutbox .= "' . fetch_template('vbpager_listbit') . '";');               

                }


        }
        else
                $show[pagererror]        = 1;


 }
// Start of Pager LOG


// Start of Pager reply
if ($do=='pagerreply')
 {
        $show[pagerreply] = 1;

// Reply message

        $touserid        = $touid;
        $message        = addslashes(htmlspecialchars(trim($message)));

                $sqltemp        = $DB_site->query_first("select active from " .  TABLE_PREFIX . "pager where pagerid=$pid");
                $addpager        = intval($sqltemp[active]);
                  $DB_site->query("UPDATE " .  TABLE_PREFIX . "user set pager = pager - $addpager where userid = " . $bbuserinfo[userid] . "");
                  $DB_site->query("UPDATE " .  TABLE_PREFIX . "pager set deliverdate = " . TIMENOW . " , active = 0 where pagerid = $pid");

       
                if ($message)
                {
        $DB_site->query("INSERT into " .  TABLE_PREFIX . "pager(touserid, parentpid, fromuserid, message, msgdate) values ($touserid, $pid, " . $bbuserinfo[userid] . ", '$message', " . TIMENOW . ")");
        $DB_site->query("UPDATE user set " .  TABLE_PREFIX . "pager = pager + 1 where userid = $touserid");
                        $replysent = 1;
                }       

// Update delivered messages


 }
// End of Pager reply


// Start of Pager Deliver Report
if ($do=='pagerreport')
 {
        $show[pagerreport] = 1;



 }
// End of Pager Deliver Report



// Start of Pager Logs
if ($do=='pagerlogs')
 {
        $show[pagerlogs] = 1;



 }
// End of Pager Logs


// Start New Pager to User
if ($do=='newpager')
 {
        $show[newpager] = 1;

        if (trim($guestid))
          $done = can_pager(1);
        else
          $done = can_pager();


                        if ($pid)
                        {
                $sqltemp        = $DB_site->query_first("select active, deliverdate from " .  TABLE_PREFIX . "pager where pagerid=$pid");
                $addpager        = intval($sqltemp[active]);

                        if ($sqltemp[deliverdate])
                          {
                  $DB_site->query("UPDATE " .  TABLE_PREFIX . "user set pager = pager - $addpager where userid = " . $bbuserinfo[userid] . "");
                  $DB_site->query("UPDATE " .  TABLE_PREFIX . "pager set active = 0 where pagerid =$pid");
                          }

                  $DB_site->query("UPDATE " .  TABLE_PREFIX . "pager set deliverdate = " . TIMENOW . " where pagerid =$pid");
                        }


        $uids = explode(',', str_replace(' ', '', $vboptions[vbpager_canhidename]));
        foreach($uids AS $ids)
        if ($bbuserinfo[userid]==$ids)
          $canhide = 1;


        if ($done==1)
        {
                if ($touserid > 0)
                {
                        if ($touserid==$bbuserinfo[userid])
                          {
                                $show[newpager]                = "";
                                $show[pagererror]        = 1;
                                $selfpager                = 1;       
                          }
                        else
        $pagerinfo = $DB_site->query_first("SELECT userid, username from " .  TABLE_PREFIX . "user WHERE userid=$touserid");
                }
                elseif ($guestid)
                  {
        $pagerinfo = $DB_site->query_first("SELECT * from " .  TABLE_PREFIX . "session where sessionhash='$guestid'");
                        $pagerinfo[username]        = $vbphrase['guest'];
                        $pagerinfo[guestid]        = $guestid;
                  }


          if (!($pagerinfo))
                {
        $show[newpager]                = "";
        $show[pagererror]        = 1;
                $nouser                = 1;
                }
       
        }
        else
          print_no_permission();


 }
// End New Pager to User


// Start New Pager to User
if ($do=='sendpager')
 {
        $show[sendpager] = 1;

        $canreply        = intval($usercanreply);
        $message        = addslashes(htmlspecialchars($message));
        $hidden                = intval($hideuser);

                if ($touserid==0)
        $DB_site->query("INSERT into " .  TABLE_PREFIX . "pager(tosessionid, fromuserid, message, msgdate, canreply, hidden) values ('$toguestid', " . $bbuserinfo[userid] . ", '$message', " . TIMENOW . ",$canreply, $hidden)");
                else
                {
        $DB_site->query("INSERT into " .  TABLE_PREFIX . "pager(touserid, fromuserid, message, msgdate, canreply, hidden) values ($touserid, " . $bbuserinfo[userid] . ", '$message', " . TIMENOW . ",$canreply, $hidden)");

        $DB_site->query("UPDATE user set " .  TABLE_PREFIX . "pager = pager + 1 where userid = $touserid");
                }

 }
// End New Pager to User

eval('print_output("' . fetch_template('vbpager') . '");');
?>

I can't recall the last time I've had this much difficulty with a modification.

Mitsuaki 12-24-2004 06:00 PM

Fatal error: Call to undefined function: can_pager() in /customers/myhost.com/myhost.com/httpd.www/forums/global.php on line 302

That cant be good... i get that when i try to load.... anything.... index, admin cp, everything????

bahawolf 12-25-2004 11:10 PM

I have the popup problem that Dad has only with Firefox.

ethank 12-28-2004 09:49 PM

Any fix for the messages keeping appearing on every page even after you have read them?

D|ver 12-31-2004 09:03 AM

thank you i will test this one out :)

so there will be no more errors with popup killers now?
does every browser support dhtml?


All times are GMT. The time now is 07:58 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.01269 seconds
  • Memory Usage 1,831KB
  • 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
  • (2)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)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
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete