ciao ragazzi, ancora una volta mi trovo costretto a chiedere il vostro aiuto per risolvere l'ennesimo problema con il mio sito web...
ho creato una pagina chiamata site_key.tpl
di cui vi riporto il codice:
come potete vedere ho creato semplicemente 4 righe di testo dove posso inserire alcuni dati quali "key,points,mail,charname"
il codice php a cui questo file fa riferimento è nel file inc.key.php
di cui vi riporto il contenuto:
praticamente, con questo codice apparentemente funzionante, sono in grado di prendere i dati inseriti e rigistrarli in un database SQL, più precisamente nella database "website" alla tabella item_key !
ora però vorrei implementare il codice aggiungendo due cose:
prima cosa:
vorrei che quando registro i file sul database mi inserisca anche una colonna con la data... devo aggiungere una colonna al database e questo non è un problema ma non so come gestire il formato della cella e come far scrivere in automatico data e ora senza doverla inserire manualmente...
seconda cosa:
vorrei implementare lo script in modo tale che, quando avviene la registrazione dei dati sul database venga anche automaticamente inviata una mail all'indirizzo che ho inserito con un semplice testo del tipo:
"la tua activation key è: $key"
il secondo punto è quello più importante per la gestione del sito...
gia utilizzo l'invio di email per la conferma di registrazione quindi parte del codice è gia integrato infatti:
nel file inc.config.php c'è:
Confido nel vostro aiuto perchè non so più come procedere...
Vi ringrazio anticipatamente per la vostra disponibilità
Matteo
ho creato una pagina chiamata site_key.tpl
di cui vi riporto il codice:
PHP:
{include file='file:core/header.tpl'}
<!-- B. MAIN -->
<div class="main">
{include file='file:sidebars/left.tpl'}
<!-- B.2 MAIN CONTENT -->
<div class="main-content">
<!-- Pagetitle -->
<h1 class="pagetitle">Points key</h1>
{if count($message.messages) > 0}
<div class="{$message.type}">
<ul>
{foreach item=text from=$message.messages}
<li>{$text}</li>
{/foreach}
</ul>
</div>
{/if}
{if $user.is_admin}
<div class="column1-unit" align="center">
<div class="contactform" align="center">
<form method="post" action="{$script_url}?act=key">
<fieldset><legend> {$user.name}'s MALL POINTS DELIVERING SISTEM </legend>
<p>Please enter here the key gonna active now:</p>
<p> <input type="text" name="act_key" id="act_key" class="bigfield" value="{$form_key}" tabindex="1" /></p>
<p>Please enter here the point's quantity:</p>
<p> <input type="text" name="points" id="points" class="bigfield" value="{$form_points}" tabindex="1" /></p>
<p>Please enter here the donator's email:</p>
<p> <input type="text" name="mail" id="mail" class="bigfield" value="{$form_mail}" tabindex="1" /></p>
<p>Please enter here the donator's char name:</p>
<p> <input type="text" name="charname" id="charname" class="bigfield" value="{$form_charname}" tabindex="1" /></p>
<p><input type="submit" id="submit" class="button" name="a_key" value="Submit"></p>
</fieldset>
</form>
</div>
</div>
<div class="notice">
<ul>
<li>- A Key only contains 16 Letters!</li>
<li>- Every Key can be used only once!</li>
<li>- You can obtain keys from events or by donating for the Server</li>
<li>- If you got any problems useing this System please contact the team over the Contact form!</li>
</ul>
</div>
</div>
{else}
<!-- Pagetitle -->
<h1 class="pagetitle">Login</h1>
<div class="contactform">
<form method="post" action="{$script_url}?act=login">
<input type="hidden" name="login" value="doit" />
<p><label for="username" class="left">Username:</label>
<input type="text" name="username" id="username" class="shortfield" value="{$form_username}" tabindex="1" /></p>
<p><label for="password" class="left">Password:</label>
<input type="password" name="password" id="password" class="shortfield" value="" tabindex="2" autocomplete="off" /></p>
<p><input type="submit" name="submit" id="submit" class="button" value="Login" tabindex="3" /></p>
<p> </p>
</form>
</div>
</div>
{/if}
{include file='file:sidebars/right.tpl'}
</div>
{include file='file:core/footer.tpl'}
come potete vedere ho creato semplicemente 4 righe di testo dove posso inserire alcuni dati quali "key,points,mail,charname"
il codice php a cui questo file fa riferimento è nel file inc.key.php
di cui vi riporto il contenuto:
PHP:
<?php
// Include needed files
if (isset($_SESSION['aid']))
{
if (isset($_POST['a_key'])) {
$act_key = trim((isset($_POST['act_key']) ? $_POST['act_key'] : ''));
$points = trim((isset($_POST['points']) ? $_POST['points'] : ''));
$mail = trim((isset($_POST['mail']) ? $_POST['mail'] : ''));
$charname = trim((isset($_POST['charname']) ? $_POST['charname'] : ''));
$query = doQuery("SELECT * FROM item_key WHERE act_key = '$act_key'", DATABASE_WEBSITE);
if(mssql_num_rows($query) > 0)
{
$oSmarty->assign('message', array( 'type' => 'error',
'messages' => array( 'KEY USED, TRY WITH A DIFFERENT ONE!' ) ) );
}
else
{
$actkey = doQuery("INSERT INTO item_key (act_key,wasted,points,mail,charname) VALUES ('$act_key','0','$points','$mail','$charname')", DATABASE_WEBSITE);
if(!$actkey)
{
$oSmarty->assign('message', array( 'type' => 'error',
'messages' => array( 'Error key' ) ) );
}
else
{
$oSmarty->assign('message', array( 'type' => 'ok',
'messages' => array( 'Your key has been succesful actived!' ) ) );
}
}
}
}
else
{
$oSmarty->assign('message', array( 'type' => 'error',
'messages' => array( 'Please log-in to acces this feature!.' ) ) );
}
// Build breadcrumb-navigation
$breadcrumbs = array();
$breadcrumbs[] = array( 'caption' => 'Home',
'url' => '' );
$breadcrumbs[] = array( 'caption' => 'Active Key',
'url' => '' );
$oSmarty->assign('breadcrumbs', $breadcrumbs);
// Display page
$oSmarty->display('file:pages/mall/site_key.tpl');
?>
praticamente, con questo codice apparentemente funzionante, sono in grado di prendere i dati inseriti e rigistrarli in un database SQL, più precisamente nella database "website" alla tabella item_key !
ora però vorrei implementare il codice aggiungendo due cose:
prima cosa:
vorrei che quando registro i file sul database mi inserisca anche una colonna con la data... devo aggiungere una colonna al database e questo non è un problema ma non so come gestire il formato della cella e come far scrivere in automatico data e ora senza doverla inserire manualmente...
seconda cosa:
vorrei implementare lo script in modo tale che, quando avviene la registrazione dei dati sul database venga anche automaticamente inviata una mail all'indirizzo che ho inserito con un semplice testo del tipo:
"la tua activation key è: $key"
il secondo punto è quello più importante per la gestione del sito...
gia utilizzo l'invio di email per la conferma di registrazione quindi parte del codice è gia integrato infatti:
nel file inc.config.php c'è:
PHP:
...
$config['mail'] = array( 'mode' => 'smtp', 'use_ssl' => false, 'server' => 'smtp.email.it', 'port' => 25, 'email' => '******@email.it', 'username' => '*******', 'password' => '*******', 'use_auth' => 'yes' );
...
Confido nel vostro aiuto perchè non so più come procedere...
Vi ringrazio anticipatamente per la vostra disponibilità
Matteo