steadicamop
05-26-2008, 04:56 PM
Hey guys, I'm stuck solid on something at the mo, I understand in theory how it should work, but just can't figure it out. I have these two bits of code:
session_start();
if (!isset($_SESSION['secure'])) {
if (!$_GET['clicked']) {
$numimgs = $vbulletin->options['eic_numimgs'];
$answer_position = rand(1,$numimgs);
$d = dir($vbulletin->options['eic_imgpath']);
while (false !== ($entry = $d->read()))
if ($entry != '.' && $entry != '..' && $entry != 'show.php' && $entry != '.htaccess' && $entry != 'Thumbs.db')
$answers[] .= $entry;
$amount = count($answers);
$the_answer = rand(1,$amount);
for($i=1;$i<$numimgs;$i++) {
if ($answer_position == $i) $show_image[] = $the_answer;
$tmp = rand(1,$amount);
while ($tmp == $the_answer || (is_array($show_image) && in_array($tmp,$show_image))) $tmp = rand(1,$amount);
$show_image[] = $tmp;
}
if ($answer_position == $i) $show_image[] = $the_answer;
$d->close();
$_SESSION['answer_position'] = $answer_position;
$_SESSION['show_images'] = $show_image;
$question = substr($answers[$the_answer-1],0,-4);
}
else {
if ($_GET['clicked'] == $_SESSION['answer_position']) $_SESSION['secure'] = 1;
else $badchoice = 1;
}
if (!isset($_SESSION['secure'])) {
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('image_verification') . '");');
}
}
That's the main chunk of code, I also have this:
$t = 1;
while($t <= $vbulletin->options['eic_numimgs'])
{
$numings = $t;
eval('$imagebits = "' . fetch_template('imagebits') . '";');
$t = $t+1;
}
Now, I'm not too sure the code above is correct but basically, what I need to happen is for the imagetbits template to be called as many times as dictated in $vbulletin->options['eic_numimgs'] (say 5 for example).
The main chunk of code also counts the same amount of times (5), but I can't combine both and make it work ... it only ever appears once! What do I need to do to get this working?
Cheers!
Jason
session_start();
if (!isset($_SESSION['secure'])) {
if (!$_GET['clicked']) {
$numimgs = $vbulletin->options['eic_numimgs'];
$answer_position = rand(1,$numimgs);
$d = dir($vbulletin->options['eic_imgpath']);
while (false !== ($entry = $d->read()))
if ($entry != '.' && $entry != '..' && $entry != 'show.php' && $entry != '.htaccess' && $entry != 'Thumbs.db')
$answers[] .= $entry;
$amount = count($answers);
$the_answer = rand(1,$amount);
for($i=1;$i<$numimgs;$i++) {
if ($answer_position == $i) $show_image[] = $the_answer;
$tmp = rand(1,$amount);
while ($tmp == $the_answer || (is_array($show_image) && in_array($tmp,$show_image))) $tmp = rand(1,$amount);
$show_image[] = $tmp;
}
if ($answer_position == $i) $show_image[] = $the_answer;
$d->close();
$_SESSION['answer_position'] = $answer_position;
$_SESSION['show_images'] = $show_image;
$question = substr($answers[$the_answer-1],0,-4);
}
else {
if ($_GET['clicked'] == $_SESSION['answer_position']) $_SESSION['secure'] = 1;
else $badchoice = 1;
}
if (!isset($_SESSION['secure'])) {
eval('$navbar = "' . fetch_template('navbar') . '";');
eval('print_output("' . fetch_template('image_verification') . '");');
}
}
That's the main chunk of code, I also have this:
$t = 1;
while($t <= $vbulletin->options['eic_numimgs'])
{
$numings = $t;
eval('$imagebits = "' . fetch_template('imagebits') . '";');
$t = $t+1;
}
Now, I'm not too sure the code above is correct but basically, what I need to happen is for the imagetbits template to be called as many times as dictated in $vbulletin->options['eic_numimgs'] (say 5 for example).
The main chunk of code also counts the same amount of times (5), but I can't combine both and make it work ... it only ever appears once! What do I need to do to get this working?
Cheers!
Jason