vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=15)
-   -   Querying Usergroups Then Array Help? (https://vborg.vbsupport.ru/showthread.php?t=210602)

paul41598 04-09-2009 11:15 AM

Right I did. In newthread template I have $der2 for example.

Then this is part of the code from earlier.
Code:

$usergroupdata = array();
while ($usergroup = $vbulletin->db->fetch_array($usergroups))
{
 $usergroupdata[$usergroup['usergroupid']] = $usergroup['title'];
$der2 = $usergroup['title'];
eval('$der .= "' . fetch_template('jon') . '";');
}

But see I need the title and ID from each usergroup. The ID would get associated with the checkbox name or value I'm guessing. Then the usergroup title would just be listed to each checkbox

oh and the template jon I have:
Code:

<label for="usergroups">
<input type="checkbox" name="" value="" id="" tabindex="1" />$der2
</label>

--------------- Added [DATE]1239283376[/DATE] at [TIME]1239283376[/TIME] ---------------



Hmm, changed it around cuz I found some issues with my code (idiot) doh.

newthread form complete hook
Code:

$usergroupdata = array();
while ($usergroup = $vbulletin->db->fetch_array($usergroups))
{
 //Assign group title to $grouptitle variable
 $usergroupdata[$usergroup['title']] = $usergroup['title'];
 $grouptitle = $usergroupdata[$usergroup['title']];

 //Assign group ID to $groupID variable
 $usergroupdata[$usergroup['usergroupid']] = $usergroup['usergroupid'];
 $groupID= $usergroupdata[$usergroup['usergroupid']];

eval('$der .= "' . fetch_template('jon') . '";');
}

Jon template:
Code:

<label for="usergroups">
<input type="checkbox" name="groupID" value="$groupID" id="" tabindex="1" />$grouptitle
</label>

newthread post complete hook
Code:

$vbulletin->input->clean_array_gpc('p', array('groupID' => TYPE_ARRAY));

echo $vbulletin->GPC['groupID'];

At least its displaying so far.
http://www.thecentralword.com/misc/f...usergroups.jpg

--------------- Added [DATE]1239285415[/DATE] at [TIME]1239285415[/TIME] ---------------

I think I got it to display all ID's that I check!

My newthread post complete hook was wrong. This works. Maybe you can double check to make sure its written correctly though. Also, what if I needed to get all email address from users associated with each checkbox. Wouldnt' I just do a left join on that original query?

Code:

$vbulletin->input->clean_array_gpc('p', array('groupID' => TYPE_ARRAY));

foreach ($vbulletin->GPC['groupID'] AS $id)
{
    echo $id . "&nbsp;";
}


Dismounted 04-09-2009 01:16 PM

You're making it so complicated...
PHP Code:

while ($usergroup $vbulletin->db->fetch_array($usergroups))
{
    eval(
'$der .= "' fetch_template('jon') . '";');


HTML Code:

<label for="usergroups">
<input type="checkbox" name="groupID" value="$usergroup[usergroupid]" id="" tabindex="1" />$usergroup[title]
</label>


paul41598 04-09-2009 01:33 PM

lol, ya I always do it seems :rolleyes:

So if I'm trying to pull all email address who are IN those $usergroupids

Code:

$usergroups = $vbulletin->db->query_read("
    SELECT usergroup.usergroupid, usergroup.title, user.email
    FROM " . TABLE_PREFIX . "usergroup AS usergroup, user AS user
    WHERE usergroup.usergroupid IN ($usergroupids)

");

I tried the LEFT join on the user table, no good. Can you point me in the right direction of what I'm missing here?

UPDATE: ( 9:33pm)
Ok I've been working on this. Instead of the query going in the form complete, I'm putting it in there newthread post complete: Here is my updated code. It wont work though.

Code:

$vbulletin->input->clean_array_gpc('p', array('groupID' => TYPE_ARRAY));

foreach ($vbulletin->GPC['groupID'] AS $id)
{
$ids = $id;
}

$usergroups2 = $vbulletin->db->query_read("
    SELECT email
    FROM " . TABLE_PREFIX . "user
    WHERE usergroupid IN ($ids)
");

while ($usergroups3 = $vbulletin->db->fetch_array($usergroups2))
{
//send to my email to test if subject line is parsing variables
vbmail("my_email_was_here.net", $usergroups3['email'], $message);
}


DJ29Joesph 04-09-2009 04:51 PM

Funny, I am kinda trying to do the same thing.. I want a page that shows the second membergroupids 'id' and tells me the title.

Johns Membergroup Ids is: 12, 31

I want it to pick up '31' and tell me the title for '31'. Any Ideas


All times are GMT. The time now is 12:40 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.01670 seconds
  • Memory Usage 1,737KB
  • 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
  • (8)bbcode_code_printable
  • (1)bbcode_html_printable
  • (1)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (4)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