carisma postato il 22/09/2006 03:29:37 nel forum programmazione, gdrcd, open source, hosting
salve , ho usato il codice di traimo, volevo chiedervi chi mi poteva aiutare a creare il carisma, ho provato a farlo ma non funziona, c`è qualcuno che può aiutarmi?
vi ringrazio
Pagine → 1 2
23/09/2006 13:39:07
i file da modificare sono il do_login vis_scheda.php e vis_scheda3.php^_^ e poi aggiungere all` sql questa stringa:
ALTER TABLE `USERS` ADD `CARISMA` INT(11) NOT NULL;
^_^ tutto qui^_^ ciauuuuuuuuu
25/09/2006 03:43:05
grazie sei stato molto gentile, mi potresti solo dire come modificare ci sto provado ma mi va in palle tutto ç_ç
25/09/2006 20:39:21
mi chiedo cosa serva rispondere ai messaggi di aiuto sulla programmazione se non si da aiuto ma si fa i saccenti.
va beh.
la questione è semplice, non so su gdrcd quali sono le pagine da modificare ma devi ragionare in questo modo:
la function time() ti da un valore numerico della data attuale espresso in secondi.
fai modo che nel login questo valore venga inserito in un campo della riga dell`utente che ha fatto il login nella tabella dove sono immagazzinati gli utenti.
Fai in modo che ad ogni aperura di pagina del gioco interno (ossia quelle pagine per cui bisogna essere loggati) in un altro campo questo valore si aggiorni (sempre con time()).
Quando l`utente farà il logout o cliccherà (se lo farai) il tasto per aggiornare il carisma farai la sottrazione tra il dato del campo che veniva sempre aggiornato e quello che avevi in entrata al login.
Decidi quanto è il rapporto secondi/punti e aggiorni il carisma con una semplice addizione.
Quando fai il logout aggiorna a 0 i due campi, quando lo fai dal tasto che non fa il logout rendi il valore che avevi avuto dal login a quello attuale (come se fosse per il carisma un secondo login).
Facile più a farsi che a dirsi.
28/09/2006 18:14:25
grazie per la risposta sto cercando di fare lo script ma mi da innumerevoli errori ç_ç
28/09/2006 19:28:12
nessun saccente è stato chiesto chi glielo modificava ed io gli ho dato gli imput e comunque il GLP è molto più semplice di GDRCD che non dà suggerimenti tutto qui e poi è il codice di GLP e no GDRCD^_^ ciaoooo
dimenticavo se i problemi li hai con l`sql che ti ho scritto è per via degli `` che sql vuole in un altro modo copia quelli che ti escono nella prima stringa^_^
29/09/2006 07:12:25
Ho creato un codice che ogni giorno ti aumenta la Salute di dieci punti. Non è commentato, quindi ci dovrai un po` sbattere la testa per adattarlo e capirlo, ma se lo vuoi fammi un fischio.
29/09/2006 16:50:09
si grazie , mi spiegheresti pure brevemente dove devo metterlo, e se devo modificare qualche pagina?
grazie
la mia email è werwolfe@werwolfe.it
ti ringrazio
02/10/2006 19:29:50
Dunque, sul "dove", ti consiglierei di metterlo nel frame del gdr che fa il refresh.
I campi "chiave" dello script sono le colonne, Salute, SaluteMax e UltimaSalute. SaluteMax contiene il massimale salute, ma dato che tu devi fare il carisma, non ti serve. UltimaSalute è il campo che contiene la data dell`ultima volta che hai ricevuto i punti salute. Tu entri nel gioco, il codice fa il confronto con "UltimaSalute" e la data attuale, e per ogni giorno di differenza ti dà 10 punti salute, quindi aggiorna "UltimaSalute" e lo imposta come la data attuale. Spero di essere stato chiaro.
if ($row[`Salute`] < $row[`SaluteMax`]) {
$now = date("Y-m-d");
if ($row[`UltimaSalute`] == `0000-00-00`)
{
$MySqlquery = mysql_query("UPDATE Personaggio SET UltimaSalute = `$now` WHERE Nome = `$Login`");
} else {
list($anno, $mese, $giorno) = explode("-","$row[UltimaSalute]");
$differenza = intval((strtotime(date("Y/m/d")) - strtotime("$anno/$mese/$giorno"))/(86400));
$now = strtotime(date(`Y-m-d`));
if ($differenza > 0)
{
$newpunti = ($differenza * 10) + $row[`Salute`];
if ($newpunti >= $row[`SaluteMax`]) {$query = mysql_query("UPDATE Personaggio SET Salute = `$row[SaluteMax]` WHERE Nome = `$Login`");
$query2 = mysql_query("UPDATE Personaggio SET UltimaSalute = `$now` WHERE Nome = `$Login`");}
else {
$query = mysql_query("UPDATE Personaggio SET Salute = `$newpunti` WHERE Nome = `$Login`");
$query2 = mysql_query("UPDATE Personaggio SET UltimaSalute = `$now` WHERE Nome = `$Login`");
}
}
}
}
?>
04/10/2006 01:10:13
ti ringrazio, appena riesco a provarlo ti faccio sapere ^^ grazie
07/10/2006 00:15:47
Ciao , ascolta ho provato lo script , l`ho messo n una pagina chiamata aradica e incluso nel reflesh ma nn funziona, nn mi da errori ma non funziona ti posto come l`ho modificato...
<?
session_start();
include "controlla_login.php";
include "config.inc.php";
$now = date("Y-m-d");
if ($row[`ARADICA`] == `0000-00-00`)
{
$MySqlquery = mysql_query("UPDATE USERS SET ARADICA = `$now` WHERE USERNAME = `$Login`");
} else {
list($anno, $mese, $giorno) = explode("-","$row[ARADICA]");
$differenza = intval((strtotime(date("Y/m/d")) - strtotime("$anno/$mese/$giorno"))/(86400));
$now = strtotime(date(`Y-m-d`));
if ($differenza > 0)
{
$newpunti = ($differenza * 10) + $row[`TOTALARADICA`];
if ($newpunti >= $row[`SaluteMax`]) {$query = mysql_query("UPDATE Personaggio SET Salute = `$row[SaluteMax]` WHERE Nome = `$Login`");
$query2 = mysql_query("UPDATE USERS SET ARADICA = `$now` WHERE USERNAME = `$Login`");}
else {
$query = mysql_query("UPDATE USERS SET TOTALARADICA = `$newpunti` WHERE USERNAME = `$Login`");
$query2 = mysql_query("UPDATE USERS SET ARADICA = `$now` WHERE USERNAME = `$Login`");
}
}
}
?>
COme posso farlo funzionare?
Pagine → 1 2
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
The Voyager: Il Mercante di Surrey Street. Vendita eccezionale