[Risolto] - Budget in iscrizione e Tempo limite modifica storia postato il 14/02/2023 10:46:05 nel forum programmazione, gdrcd e open source e modificato da sallys il 17/02/2023 16:38:59
Uso GDRCD 5.6.0.2
Scusate se tartasso ancora, ma purtroppo ci sono davvero cose per le quali non so proprio da che parte iniziare senza almeno un piccolo input .__.
1. Budget all' iscrizione
Mi piacerebbe poter mettere una tendina all'interno della fase di iscrizione, per la scelta del patrimonio iniziale del pg. Sarebbe una cosa totalmente scollegata dalle abilità, per semplice coerenza con il BG del personaggio, in caso questo partisse già facoltoso o totalmente povero.
Una cosa tipo:
- Classe Bassa
- Classe Media
- Classe Alta
(Non posso sfruttare le razze perchè le ho già usate per altro)
2. Tempo limite modifica storia
Un'altra cosa che mi piacerebbe poter fare, sarebbe rendere il campo "storia" -che fa riferimento al file scheda_storia.inc.php- modificabile solo per un certo periodo. In pratica, a 10 giorni dall'iscrizione non dovrebbe essere più possibile modificare quel campo se non per chi dovesse ricoprire un ruolo da moderatore in su.
Qualcuno saprebbe darmi qualche dritta?
Grazie infinite 😊❤️
Pagine → 1
15/02/2023 11:56:18
sallys ha scritto:
1. Budget all' iscrizione
<div class="form_field">
<select name="budget">
<option value="1">Opzione 1</option>
<option value="2">Opzione 2</option>
<option value="3">Opzione 3</option>
</select>
</div>
sallys ha scritto:
2. Tempo limite modifica storia
$dataIscrizione = new DateTime($records['data_iscrizione']);
$now = new DateTime();
if(($date->diff($now)->days <= 10) || $_SESSION['permessi'] >= GAMEMASTER) {
echo "Posso modificare la Storia";
}
<?php
$dataIscrizione = new DateTime($record['data_iscrizione']);
$now = new DateTime();
if(($date->diff($now)->days <= 10) || $_SESSION['permessi'] >= GAMEMASTER) {
?>
<div class='form_field'>
<textarea type="textbox" name="modifica_background" class="form_textarea">
<?php echo gdrcd_filter('out', $record['descrizione']); ?>
</textarea>
</div>
<?php
} else {
?>
<input type="hidden" name="modifica_background" value="<?php echo gdrcd_filter('out', $record['descrizione']); ?>"
<?php
}
?>
GitHub: https://github.com/GDRCD/GDRCD
Discord: https://discord.com/invite/K2eWXpvu4M
GdR-O: https://www.gdr-online.com/readforum.asp?id=250579
15/02/2023 12:18:04
Grazie super mille per la risposta!
Appena ho un attimo di tempo mi studio tutto con calma ❤️❤️
17/02/2023 16:34:21 e modificato da sallys il 17/02/2023 16:37:58
ALLORA...
Per quanto riguarda il budget fatto vari tentativi, ma purtroppo mancandomi le basi non facevo che sbagliare e ho avuto decisamente fortuna nel ricevere un altro aiuto in merito.
Posto di seguito come l'ho impostato, in caso possa servire a qualcuno:
Nel case 1 (io l'ho messo subito dopo la scelta della razza)
<!-- Patrimonio -->
<div>
<div class="form_label">
Budget monetario di partenza
</div>
<div class="form_field">
<select name="budget" default=1>
<option value=1 <?php if (gdrcd_filter('get', $_POST['budget']) == 1) {
echo 'SELECTED';
} ?>>Classe Bassa</option>
<option value=2 <?php if (gdrcd_filter('get', $_POST['budget']) == 2) {
echo 'SELECTED';
} ?>>Classe Media</option>
<option value=3 <?php if (gdrcd_filter('get', $_POST['budget']) == 3) {
echo 'SELECTED';
} ?>>Classe Alta</option>
</select>
</div>
</div>
if ($ok == false) { ?>
<div class="form_gioco">
<form action="<?php echo $_SERVER['SCRIPT_NAME'] . '?' . $_SERVER['QUERY_STRING']; ?>" method="post">
<div class="form_submit">
<input type="hidden" name="fase" value="1" />
<input type="hidden" name="email" value="<?php echo gdrcd_filter('out', $_POST['email']) ?>" />
<input type="hidden" name="nome" value="<?php echo gdrcd_filter('out', $_POST['nome']) ?>" />
<input type="hidden" name="cognome" value="<?php echo gdrcd_filter('out', $_POST['cognome']) ?>" />
<input type="hidden" name="genere" value="<?php echo gdrcd_filter('out', $_POST['genere']) ?>" />
<input type="hidden" name="razza" value="<?php echo gdrcd_filter('num', $_POST['razza']) ?>" />
<input type="hidden" name="budget" value="<?php echo gdrcd_filter('num', $_POST['budget']) ?>" />
<input type="hidden" name="car0" value="<?php echo gdrcd_filter('num', $_POST['car0']) ?>" />
<input type="hidden" name="car1" value="<?php echo gdrcd_filter('num', $_POST['car1']) ?>" />
<input type="hidden" name="car2" value="<?php echo gdrcd_filter('num', $_POST['car2']) ?>" />
<input type="hidden" name="car3" value="<?php echo gdrcd_filter('num', $_POST['car3']) ?>" />
<!-- Brancix -->
<tr>
<td class='casella_elemento'>
<div class='elementi_elenco'>
<?php switch(gdrcd_filter('out', $_POST['budget'])){
case 1:
echo "<span>Classe Bassa</span>";
break;
case 2:
echo "<span>Classe Media</span>";
break;
case 3:
echo "<span>Classe Alta</span>";
break;
} ?>
</div>
</td>
</tr>
<form action="<?php echo $_SERVER['SCRIPT_NAME'] . '?' . $_SERVER['QUERY_STRING']; ?>" method="post">
<div class="form_submit">
<input type="hidden" name="fase" value="3" />
<input type="hidden" name="email" value="<?php echo gdrcd_filter('out', $_POST['email']) ?>" />
<input type="hidden" name="nome" value="<?php echo gdrcd_filter('out', $_POST['nome']) ?>" />
<input type="hidden" name="cognome" value="<?php echo gdrcd_filter('out', $_POST['cognome']) ?>" />
<input type="hidden" name="genere" value="<?php echo gdrcd_filter('out', $_POST['genere']) ?>" />
<input type="hidden" name="razza" value="<?php echo gdrcd_filter('num', $_POST['razza']) ?>" />
<input type="hidden" name="budget" value="<?php echo gdrcd_filter('num', $_POST['budget']) ?>" />
<input type="hidden" name="car0" value="<?php echo gdrcd_filter('num', $_POST['car0']) ?>" />
<input type="hidden" name="car1" value="<?php echo gdrcd_filter('num', $_POST['car1']) ?>" />
<input type="hidden" name="car2" value="<?php echo gdrcd_filter('num', $_POST['car2']) ?>" />
<input type="hidden" name="car3" value="<?php echo gdrcd_filter('num', $_POST['car3']) ?>" />
if ($ok) {
/* Qui viene inserita la quantità di denaro */
$budget_iniziale = 0;
switch( gdrcd_filter('num', $_POST['budget'])){
case 1:
$budget_iniziale = 1000;
break;
case 2:
$budget_iniziale = 5000;
break;
case 3:
$budget_iniziale = 10000;
break;
default:
$budget_iniziale = 50;
break;
}
$pass = gdrcd_genera_pass();
gdrcd_query("INSERT INTO personaggio (nome, cognome, pass, data_iscrizione, email, sesso, id_razza, car0, car1, car2, car3, car4, car5, salute, salute_max, soldi, banca, esperienza $lastpasschange_field)
VALUES ('" . gdrcd_safe_name($_POST['nome']) . "', '" . gdrcd_safe_name($_POST['cognome']) . "', '" . gdrcd_encript($pass) . "', NOW(), '" . gdrcd_encript($email) . "', '" . gdrcd_filter('in', $_POST['genere']) . "', " . gdrcd_filter('num', $_POST['razza']) . ", " . gdrcd_filter('num', $_POST['car0']) . ", " . gdrcd_filter('num', $_POST['car1']) . ", " . gdrcd_filter('num', $_POST['car2']) . ", " . gdrcd_filter('num', $_POST['car3']) . ", " . gdrcd_filter('num', $_POST['car4']) . ", " . gdrcd_filter('num', $_POST['car5']) . ", " . gdrcd_filter('num', $PARAMETERS['settings']['max_hp']) . ", " . gdrcd_filter('num', $PARAMETERS['settings']['max_hp']) . ", '0', " . $budget_iniziale . ", " . gdrcd_filter('num', $PARAMETERS['settings']['first_px']) . " $lastpasschange_value)");
'0', " . $budget_iniziale . ",
TEMPO LIMITE MODIFICA STORIA
<?php $dataIscrizione = new DateTime($records['data_iscrizione']);
$now = new DateTime();
if($dataIscrizione->diff($now)->days >= 10) {?>
<div class='form_label'>
<?php echo gdrcd_filter('out',
$MESSAGE['interface']['sheet']['modify_form']['background']); ?><br>
<span class="label-px">10 giorni di tempo per modificare il campo</span>
</div>
<div class='form_field'>
<textarea type="textbox" name="modifica_storia"
class="form_textarea"><?php echo gdrcd_filter('out',
$record['storia']); ?></textarea>
</div>
<?php } else { ?>
<div class='warning-storia'>
<span class="alert-red">Attenzione:</span> <span class="no-modify">La storia non è più modificabile</span>
</div>
<input type="hidden" name="modifica_storia" value="<?php echo gdrcd_filter('out', $record['background']); ?>">
<?php
}
?>
18/02/2023 21:40:28
Scusami Sallys, il codice del tempo limite per il modifica storia non ti crea problemi con la modifica dei punti salute e note master?
Sto provando a implementare una cosa simile ad alcuni campi, ma ogni volta che cerco di modificare i punti salute mi svuota tutta la scheda e non ne sto venendo a capo (ho provato anche il tuo codice e mi fa la stessa cosa, ma se è un problema solo mio posso escludere che l'errore sia lì)
19/02/2023 11:42:30
Ciau blackwaters, allora, non mi sembra di avere il tuo problema, ma me n'è uscito un altro, quindi adesso vedo un attimo di risolvere e poi spiego tutto e ti confermo se effettivamente il problema che hai tu io non ce l'ho o meno.
Chiedo venia
20/02/2023 10:25:56
sallys ha scritto: Ciau blackwaters, allora, non mi sembra di avere il tuo problema, ma me n'è uscito un altro, quindi adesso vedo un attimo di risolvere e poi spiego tutto e ti confermo se effettivamente il problema che hai tu io non ce l'ho o meno.
Chiedo venia
/*Carico le informazioni del PG*/
$record = gdrcd_query("SELECT descrizione, storia, affetti, prestavolto, cognome, online_status, url_img, url_img_chat, url_img_look, url_media, blocca_media, blocca_audio_scheda, stato, note_base, salute, data_iscrizione FROM personaggio
WHERE nome='" . gdrcd_filter('get',
$_REQUEST['pg']) . "'");
Claudio
20/02/2023 20:54:04
AH...io vedendo che nemmeno in scheda.inc c'era nella query, non mi ero posta il problema...coff.
Comunque confermo che non mi dà altri problemi, ora funziona tutto!
23/02/2023 09:21:09
Allora cerco di capire dove sta l'errore, magari è solo qualche parentesi che mi sfugge.
Grazie per la conferma :)
23/02/2023 10:48:16
backwaters ha scritto: Allora cerco di capire dove sta l'errore, magari è solo qualche parentesi che mi sfugge.
Grazie per la conferma :)
Claudio
04/03/2023 10:02:31
Grazie a cbr89 che ha trovato l'errore, ho risolto ed il problema era nell'aggiunta dei permessi staff per modificare la sezione "utente" della scheda.
Lascio il codice corretto se può servire a qualcuno, in questo modo i moderatori possono agire sui campi cognome, immagini, storia, ecc senza dover replicare tutto nella pagina Amministra (in grassetto l'aggiunta):
Dal rigo 56
/* Se l'utente ha richiesto di modificare la propria scheda */
if ((gdrcd_filter('get', $_REQUEST['pg']) == $_SESSION['login'] && (gdrcd_filter('get',$_POST['op']) == 'modify')) || ($_SESSION['permessi'] >= MODERATOR && gdrcd_filter('get',$_POST['op']) == 'modify'))
{
/** * Html, BBcode or both ?
Discussione seguita da
Pagine → 1
Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
pururin ha risposto alla discussione: Never Have I Ever: Mysteries of Laconia Bay
✋😟
Abbiamo rilevato che stai usando un software per bloccare la pubblicità!
L'utilizzo di GDR-online.com è gratuito da oltre 18 anni ma è necessario coprire i costi per mantenerlo online... ti chiediamo di aiutarci disabilitando il blocco dei banner pubblicitari.
Togliere il blocco significa fare in modo che GDR-online.com possa continuare a far conoscere piccoli giochi amatoriali gratuitamente e offrire un servizio sempre migliore e adatto alle esigenze dei suoi giocatori!
Se questo avviso continua ad apparire nonostante tu abbia autorizzato il portale:
- Verifica nelle opzioni che venga disattivato AdBlock in tutto il dominio gdr-online.com e non solo in una pagina
- Controlla di non avere fra le estensioni installate altre analoghe ad AdBlock, come AdBlock Plusbr, ublock origin, ecc.
- Probabilmente sul tuo PC è installato un Antivirus che ha anche funzioni di blocco pubblicità
- Se usi Firefox impostare il "Blocco Contenuti" su "Normale" e non su "Restrittivo". Per farlo clicca sull'icona dello scudo vicino all'URL e clicca su "Disattiva Blocco per questo sito"
- Prova a premere CTRL + F5, riloggarti e vedi se il problema persiste