The Arcive of vBulletin Modifications Site. |
|
|
#1
|
|||
|
|||
|
Regarding my last thread (https://vborg.vbsupport.ru/showthread.php?t=231999)...
When I attempt to post the form that I created, vBulletin gives an error: Quote:
Code:
<?
// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);
// #################### DEFINE IMPORTANT CONSTANTS #######################
define('THIS_SCRIPT', 'testform');
define('CSRF_PROTECTION', true);
// change this depending on your filename
// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();
// get special data templates from the datastore
$specialtemplates = array();
// pre-cache templates used by all actions
$globaltemplates = array('TESTFORM',
);
// pre-cache templates used by specific actions
$actiontemplates = array();
// ######################### REQUIRE BACK-END ############################
// if your page is outside of your normal vb forums directory, you should change directories by uncommenting the next line
// chdir ('/path/to/your/forums');
require_once('./global.php');
// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################
$navbits = construct_navbits(array('' => 'Test Form'));
$navbar = render_navbar_template($navbits);
// ###### YOUR CUSTOM CODE GOES HERE #####
$pagetitle = 'Test Form Submission';
$poutput = '';
if( $vbulletin->userinfo['userid'] == '' )
{
$poutput = '<p>You must be logged in to use this form.</p>';
}
else
{
$poutput = '
<p>Hello, user #' . $vbulletin->userinfo['userid'] . '. Please fill out the form below.</p>
<form action="testform_submit.php" method="post">
<input type="hidden" name="t" value="1"/>
<table border="0">
<tr>
<td align="right" valign="center"><b>Name:</b></td>
<td valign="center"><input type="text" name="uname" size="30"/></td>
</tr>
</table><br/><br/>
<input type="submit" name="submit" value="OK"/>
</form>';
}
// ###### NOW YOUR TEMPLATE IS BEING RENDERED ######
$templater = vB_Template::create('TESTFORM');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('pagetitle', $pagetitle);
$templater->register('poutput', $poutput);
print_output($templater->render());
?>
Code:
<?
/*
* Test Form - Submit Script
*/
// ####################### SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);
// #################### DEFINE IMPORTANT CONSTANTS #######################
define('THIS_SCRIPT', 'testformsubmit');
define('CSRF_PROTECTION', true);
// change this depending on your filename
// ################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();
// get special data templates from the datastore
$specialtemplates = array();
// pre-cache templates used by all actions
$globaltemplates = array('TESTFORMSUBMIT',
);
// pre-cache templates used by specific actions
$actiontemplates = array();
// ######################### REQUIRE BACK-END ############################
// if your page is outside of your normal vb forums directory, you should change directories by uncommenting the next line
// chdir ('/path/to/your/forums');
require_once('./global.php');
// #######################################################################
// ######################## START MAIN SCRIPT ############################
// #######################################################################
$navbits = construct_navbits(array('' => 'Test Form Submit'));
$navbar = render_navbar_template($navbits);
// ###### YOUR CUSTOM CODE GOES HERE #####
$pagetitle = 'Test Form Submission Script';
$presult = '';
if( $vbulletin->userinfo['userid'] == '' )
{
$presult = '<p>You must be logged in to process user forms.</p>';
}
else
{
if( $_POST['t'] != '1' )
{
$presult = '<p>This script cannot be run directly.</p>';
}
else if( $_POST['uname'] == '' )
{
$presult = '<p>You must enter your name.</p>';
}
else
{
$presult = '<p>Your name is ' . $_POST['uname'] . '.</p>';
}
}
// ###### NOW YOUR TEMPLATE IS BEING RENDERED ######
$templater = vB_Template::create('TESTFORMSUBMIT');
$templater->register_page_templates();
$templater->register('navbar', $navbar);
$templater->register('pagetitle', $pagetitle);
$templater->register('presult', $presult);
print_output($templater->render());
?>
This had no effect, however. The problem persists. Viewing source on the form, there is no value set for the securitytoken field. So, my two questions here:
|
|
#2
|
||||
|
||||
|
|
#3
|
|||
|
|||
|
That doesn't seem to be working. When I try to save the template with:
Code:
{vb:stylevar htmldoctype}
<html xmlns="http://www.w3.org/1999/xhtml" dir="{vb:stylevar textdirection}" lang="{vb:stylevar languagecode}" id="vbulletin_html">
<head>
<title>{vb:raw vboptions.bbtitle}</title>
{vb:raw headinclude}
</head>
<body>
{vb:raw header}
{vb:raw navbar}
<div id="pagetitle">
<h1>{vb:raw pagetitle}</h1>
</div>
<h2 class="blockhead">Test Form Data</h2>
<div class="blockbody">
<div class="blockrow">
<vb:if condition="$show['member']">
<p>You are logged in.</p>
<vb:else />
<p>You are not logged in.</p>
<vb:if />
</div>
</div>
{vb:raw footer}
</body>
</html>
|
|
#4
|
||||
|
||||
|
Sorry, that was my syntax error.
Code:
<vb:if condition="$show['member']"> <vb:else /> </vb:if> Code:
<vb:if /> Code:
</vb:if> |
|
#5
|
||||
|
||||
|
For a vB4 template..
Incorrect: HTML Code:
<input type="hidden" name="securitytoken" value="$bbuserinfo[securitytoken]" />
HTML Code:
<input type="hidden" name="securitytoken" value="{vb:raw bbuserinfo.securitytoken}" />
|
|
#6
|
|||
|
|||
|
Dygear, Lynne: You two are great. Those suggestions work perfectly. Thanks for your time and assistance
|
|
#7
|
||||
|
||||
|
Lynne, thanks for that. The new syntax never hit me, even tho I read it like 5 times, I did not see that problem.
|
![]() |
|
|
| X vBulletin 3.8.12 by vBS Debug Information | |
|---|---|
|
|
More Information |
|
|
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|