[RISOLTO]GDRCD 5.6X - Voci postato il 07/02/2023 07:52:46 nel forum programmazione, gdrcd e open source e modificato da darkmirror il 07/02/2023 20:17:01
Buongiorno, sto cercando di far funzionare una pagina chiamata voci. In pratica stampa a video una frase su un pg da un'altro pg.
Sulla vecchia land funzionava e funziona ancora (5.4) con l'ultima no. Non riesco a capire perchč, sicuro che il problema e la soluzione ce l'ho sotto gli occhi e non la vedo mi potete dare una mano?
Posto il codice, se risolvo puň servire anche ad altri. Grazie in anticipo
<div class="pagina_scheda">
<?php /*HELP: */
//Se non e' stato specificato il nome del pg
if(isset($_REQUEST['pg']) === false) {
echo gdrcd_filter('out', $MESSAGE['error']['unknonw_character_sheet']);
exit();
}
/*Visualizzo la pagina*/
/*Rilevo il genere del PG*/
$query = "SELECT sesso FROM personaggio WHERE personaggio.nome = '".gdrcd_filter('get', $_REQUEST['pg'])."'";
$result = gdrcd_query($query, 'result');
//Se non esiste il pg
if(gdrcd_query($result, 'num_rows') == 0) {
echo '<div class="error">'.gdrcd_filter('out', $MESSAGE['error']['unknown_character_sheet']).'</div>';
exit();
}
//aggiungi voce
if($_POST['op'] == 'aggiungi_voce') {
gdrcd_query("INSERT INTO voci (mittente, destinatario, testo, spedito) VALUES ('".gdrcd_filter('in',$_SESSION['login'])."', '".gdrcd_filter('in',$_REQUEST['pg'])."', '".gdrcd_filter('in',$_POST['testo'])."', NOW())");
?>
<div class="warning">
<?php echo gdrcd_filter('out',$MESSAGE['warning']['inserted']);?>
</div>
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
} // aggiungi voce
// cancella voce
if(gdrcd_filter('get',$_REQUEST['op'])=='cancella_voce') {
gdrcd_query("DELETE FROM voci WHERE id='".$_POST['id']."'");
?>
<div class="warning">
<?php echo gdrcd_filter('out',$MESSAGE['warning']['deleted']);?>
</div>
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
// cancella voce
}
if (isset($_REQUEST['op'])===FALSE){
?>
<div class="background"><!-- Voci -->
<div class="voci_container" style="background: url(../themes/advanced/imgs/box.png) repeat;"><!-- contenitore -->
<div class="titolo_box"><center><h2>Voci</h2></center></div>
<table width="80%">
<?php if (($_SESSION['permessi']>=GAMEMASTER)||($_SESSION['login'] == $_REQUEST['pg'])){ ?>
<tr>
<td> <div class="titolo_box"><h2 style="font-size: 14px;"><center>Autore</center></h2></div></td>
<td><center></center></td>
<td></td>
</tr>
<?php } ?>
<div class="body_box" style="padding: 0;">
<?php
$voci = gdrcd_query("SELECT * FROM voci WHERE destinatario = '".gdrcd_filter('in',$_REQUEST['pg'])."' ORDER BY id", 'result');
while($row=gdrcd_query($voci, 'fetch'))
{
?>
<tr>
<?php if ($_SESSION['permessi']>=GAMEMASTER){ ?>
<td ><center>
<?php
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_REQUEST['pg']).'">';
echo '<img src="'.$record['url_img_chat'].'" border="0" width="50" height="50"> <br/>';
echo $row['mittente'];
echo '</a>';
?></center>
</td>
<?php } ?>
<td><center>
<?php
echo '<div style="margin:20px; font-weight: italic; float: left;"><li><i>'.$row['testo'].'</i></li></div>';
?></center>
</td>
<td><center>
<?php if($_SESSION['permessi']>=MODERATOR){
?>
<form method="post" action="popup.php?page=scheda&pg=<?php echo $_REQUEST['pg']; ?>&op=cancella_voce">
<input type="hidden"
name="op"
value="cancella_voce" />
<input type="hidden"
name="id"
value="<?php echo gdrcd_filter('num',$row['id']); ?>" />
<input type="submit" name="cancella" value="Cancella">
</form>
<?php }
?>
</center>
</td>
</tr>
<?php } //while
?>
</div>
</table>
<form method="post" action="popup.php?page=scheda&pg=<?php echo $_REQUEST['pg']; ?>&op=aggiungi_voce">
<table>
<tr>
<td>
<?php
$avatar = gdrcd_query("SELECT url_img_chat FROM personaggio WHERE nome = '".gdrcd_filter('in',$_SESSION['login'])."'", 'result');
$avatar_url=gdrcd_query($avatar, 'fetch');
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_SESSION['login']).'">';
echo '<img src="'.$avatar_url["url_img_chat"].'" border="0" width="50" height="50"> <br/>';
echo $_SESSION['login'];
echo '</a>';
?>
</td>
<td>
<textarea rows="4" cols="50" name="testo" value="<?php echo $_POST['testo']; ?>">
<?php echo $_POST['testo']; ?>
</textarea>
</td>
<td>
<div class="form_submit">
<input type="hidden"
name="op"
value="aggiungi_voce" />
<input type="submit"
name="aggiungi"
value="Aggiungi voce" />
</div>
</td>
</tr>
</table>
</form>
</div> <!-- div contenitore voci -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
</div><!-- div background -->
<!--- AREA ADMIN --->
<?php if($_SESSION['permessi']>=MODERATOR){ ?>
<div class="log_report">
<?php /*report*/ ?>
</div>
<?php } ?>
</div>
<?php
} else { ?>
<!-- Link a piè di pagina -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
}//else
/********* CHIUSURA SCHEDA **********/
?>
</div><!-- Pagina -->
Pagine → 1
07/02/2023 10:50:29 e modificato da cbr89 il 07/02/2023 11:39:06
Ciao, non vorrei dire una cretinata, ma credo che l'uso della variabile $_REQUEST fatto nel tuo codice non sia corretta.
prova cosě, ma ti avviso: ho solo letto il codice da te postato, senza provarlo live.
Spero sia utile
----
Update : ho modificato qualcosa
<div class="pagina_scheda">
<?php /*HELP: */
//Se non e' stato specificato il nome del pg
if(isset($_REQUEST['pg'])) {
echo gdrcd_filter('out', $MESSAGE['error']['unknonw_character_sheet']);
exit();
}
/*Visualizzo la pagina*/
/*Rilevo il genere del PG*/
$query = "SELECT sesso FROM personaggio WHERE personaggio.nome = '".gdrcd_filter('get', $_REQUEST['pg'])."'";
$result = gdrcd_query($query, 'result');
//Se non esiste il pg
if(gdrcd_query($result, 'num_rows') == 0) {
echo '<div class="error">'.gdrcd_filter('out', $MESSAGE['error']['unknown_character_sheet']).'</div>';
exit();
}
//aggiungi voce
if($_POST['op'] == 'aggiungi_voce') {
gdrcd_query("INSERT INTO voci (mittente, destinatario, testo, spedito) VALUES ('".gdrcd_filter('in',$_SESSION['login'])."', '".gdrcd_filter('in',$_POST['pg'])."', '".gdrcd_filter('in',$_POST['testo'])."', NOW())");
?>
<div class="warning">
<?php echo gdrcd_filter('out',$MESSAGE['warning']['inserted']);?>
</div>
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
} // aggiungi voce
// cancella voce
if(gdrcd_filter('get',$_POST['op'])=='cancella_voce') {
gdrcd_query("DELETE FROM voci WHERE id='".$_POST['id']."'");
?>
<div class="warning">
<?php echo gdrcd_filter('out',$MESSAGE['warning']['deleted']);?>
</div>
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
// cancella voce
}
if (isset($_REQUEST['op'])){
?>
<div class="background">
<!-- Voci -->
<div class="voci_container" style="background: url(../themes/advanced/imgs/box.png) repeat;"><!-- contenitore -->
<div class="titolo_box"><center><h2>Voci</h2></center></div>
<table width="80%">
<?php if (($_SESSION['permessi']>=GAMEMASTER)||($_SESSION['login'] == $_REQUEST['pg'])){ ?>
<tr>
<td> <div class="titolo_box"><h2 style="font-size: 14px;"><center>Autore</center></h2></div></td>
<td><center></center></td>
<td></td>
</tr>
<?php } ?>
<div class="body_box" style="padding: 0;">
<?php
$voci = gdrcd_query("SELECT * FROM voci WHERE destinatario = '".gdrcd_filter('in',$_REQUEST['pg'])."' ORDER BY id", 'result');
while($row=gdrcd_query($voci, 'fetch'))
{ ?>
<tr>
<?php if ($_SESSION['permessi']>=GAMEMASTER){ ?>
<td ><center>
<?php
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_REQUEST['pg']).'">';
echo '<img src="'.$record['url_img_chat'].'" border="0" width="50" height="50"> <br/>';
echo $row['mittente'];
echo '</a>';
?></center>
</td>
<?php } ?>
<td><center>
<?php
echo '<div style="margin:20px; font-weight: italic; float: left;"><li><i>'.$row['testo'].'</i></li></div>';
?></center>
</td>
<td><center>
<?php if($_SESSION['permessi']>=MODERATOR){
?>
<form method="post" action="popup.php?page=scheda&pg=<?php echo $_REQUEST['pg']; ?>&op=cancella_voce">
<input type="hidden"
name="op"
value="cancella_voce" />
<input type="hidden"
name="id"
value="<?php echo gdrcd_filter('num',$row['id']); ?>" />
<input type="submit" name="cancella" value="Cancella">
</form>
<?php } ?>
</center>
</td>
</tr>
<?php } //while
?>
</div>
</table>
<form method="post" id="voce" action="popup.php?page=scheda&pg=<?php echo $_REQUEST['pg']; ?>">
<table>
<tr>
<td>
<?php
$avatar = gdrcd_query("SELECT url_img_chat FROM personaggio WHERE nome = '".gdrcd_filter('in',$_SESSION['login'])."'", 'result');
$avatar_url=gdrcd_query($avatar, 'fetch');
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_SESSION['login']).'">';
echo '<img src="'.$avatar_url["url_img_chat"].'" border="0" width="50" height="50"> <br/>';
echo $_SESSION['login'];
echo '</a>';
?>
</td>
<td>
<textarea rows="4" cols="50" name="testo" form="voce" >
<?php echo $_POST['testo']; ?>
</textarea>
</td>
<td>
<div class="form_submit">
<input type="hidden"
name="op"
value="aggiungi_voce" />
<input type="submit"
name="aggiungi"
value="Aggiungi voce" />
</div>
</td>
</tr>
</table>
</form>
</div> <!-- div contenitore voci -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
</div><!-- div background -->
<!--- AREA ADMIN --->
<?php if($_SESSION['permessi']>=MODERATOR){ ?>
<div class="log_report">
<?php /*report*/ ?>
</div>
<?php } ?>
</div>
<?php
} else { ?>
<!-- Link a piè di pagina -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
}//else
/********* CHIUSURA SCHEDA **********/
?>
</div><!-- Pagina -->
Claudio
07/02/2023 11:16:19
Grazie per aver risposto! :) purtroppo non va.
Non salva nel db e rimanda alla pagina della scheda principale esattamente come prima.
07/02/2023 11:40:09
darkmirror ha scritto: Grazie per aver risposto! :) purtroppo non va.
Non salva nel db e rimanda alla pagina della scheda principale esattamente come prima.
Claudio
07/02/2023 11:46:08
Restituisce la pagina vuota xD, secondo me č una cavolata ma guardandolo da un pň non vedo l'errore
07/02/2023 11:49:29
darkmirror ha scritto: Restituisce la pagina vuota xD, secondo me č una cavolata ma guardandolo da un pň non vedo l'errore
Claudio
07/02/2023 19:32:41
Ciao!
ho trovato l'errore, era veramente una cretinata.
Quando tu nel form indichi la "action" hai inserito come file di script scheda.php.
Invece devi inserire la pagina voci.php.inc
😃😃😃😃
<div class="pagina_scheda">
<?php /*HELP: */
//Se non e' stato specificato il nome del pg
if(isset($_REQUEST['pg']) === false) {
echo gdrcd_filter('out', $MESSAGE['error']['unknonw_character_sheet']);
exit();
}
/*Visualizzo la pagina*/
/*Rilevo il genere del PG*/
$query = "SELECT sesso FROM personaggio WHERE personaggio.nome = '".gdrcd_filter('get', $_REQUEST['pg'])."'";
$result = gdrcd_query($query, 'result');
//Se non esiste il pg
if(gdrcd_query($result, 'num_rows') == 0) {
echo '<div class="error">'.gdrcd_filter('out', $MESSAGE['error']['unknown_character_sheet']).'</div>';
exit();
} //aggiungi voce
if($_POST['op'] == 'aggiungi_voce') {
gdrcd_query("INSERT INTO voci (mittente, destinatario, testo, spedito) VALUES ('".gdrcd_filter('in',$_SESSION['login'])."', '".gdrcd_filter('in',$_REQUEST['pg'])."', '".gdrcd_filter('in',$_POST['testo'])."', NOW())");
?>
<?php
} // aggiungi voce
// cancella voce
if(gdrcd_filter('get',$_REQUEST['op'])=='cancella_voce') {
gdrcd_query("DELETE FROM voci WHERE id='".$_POST['id']."'");
?>
<div class="warning">
<?php echo gdrcd_filter('out',$MESSAGE['warning']['deleted']);?>
</div>
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php // cancella voce
}
if (isset($_REQUEST['op'])===FALSE){
?>
<div class="background"><!-- Voci -->
<div class="voci_container" style="background: url(../themes/advanced/imgs/box.png) repeat;"><!-- contenitore -->
<div class="titolo_box"><center><h2>Voci</h2></center></div>
<table width="80%">
<?php if (($_SESSION['permessi']>=GAMEMASTER)||($_SESSION['login'] == $_REQUEST['pg'])){ ?>
<tr>
<td> <div class="titolo_box"><h2 style="font-size: 14px;"><center>Autore</center></h2></div></td>
<td><center></center></td>
<td></td>
</tr>
<?php } ?>
<div class="body_box" style="padding: 0;">
<?php
$voci = gdrcd_query("SELECT * FROM voci WHERE destinatario = '".gdrcd_filter('in',$_REQUEST['pg'])."' ORDER BY id", 'result');
while($row=gdrcd_query($voci, 'fetch'))
{ ?>
<tr>
<?php if ($_SESSION['permessi']>=GAMEMASTER){ ?>
<td >
<center>
<?php
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_REQUEST['pg']).'">';
echo '<img src="'.$record['url_img_chat'].'" border="0" width="50" height="50"> <br/>';
echo $row['mittente'];
echo '</a>';
?> </center>
</td>
<?php } ?>
<td>
<center>
<?php
echo '<div style="margin:20px; font-weight: italic; float: left;"><li><i>'.$row['testo'].'</i></li></div>';
?></center>
</td>
<td><center>
<?php if($_SESSION['permessi']>=MODERATOR){
?>
<!-- Ecco qui il problema, nella tua versione questa action puntava a scheda.php-->
<form method="post" action="popup.php?page=voci&pg=<?php echo $_REQUEST['pg']; ?>&op=cancella_voce">
<input type="hidden"
name="op"
value="cancella_voce" />
<input type="hidden"
name="id"
value="<?php echo gdrcd_filter('num',$row['id']); ?>" />
<input type="submit" name="cancella" value="Cancella">
</form>
<?php }
?>
</center>
</td>
</tr>
<?php } //while
?>
</div>
</table>
<form method="post" action="popup.php?page=voci&pg=<?php echo $_REQUEST['pg']; ?>&op=aggiungi_voce">
<table>
<tr>
<td>
<?php
$avatar = gdrcd_query("SELECT url_img_chat FROM personaggio WHERE nome = '".gdrcd_filter('in',$_SESSION['login'])."'", 'result');
$avatar_url=gdrcd_query($avatar, 'fetch');
echo '<a href="popup.php?page=scheda&pg='.gdrcd_filter('in',$_SESSION['login']).'">';
echo '<img src="'.$avatar_url["url_img_chat"].'" border="0" width="50" height="50"> <br/>';
echo $_SESSION['login'];
echo '</a>';
?>
</td>
<td>
<textarea rows="4" cols="50" name="testo" value="<?php echo $_POST['testo']; ?>">
<?php echo $_POST['testo']; ?>
</textarea>
</td>
<td>
<div class="form_submit">
<input
type="hidden"
name="op"
value="aggiungi_voce" />
<input
type="submit"
name="aggiungi"
value="Aggiungi voce" />
</div>
</td>
</tr>
</table>
</form>
</div> <!-- div contenitore voci -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
</div><!-- div background -->
<!--- AREA ADMIN --->
<?php if($_SESSION['permessi']>=MODERATOR){ ?>
<div class="log_report">
<?php /*report*/ ?>
</div>
<?php } ?>
</div>
<?php
} else { ?>
<!-- Link a piè di pagina -->
<div class="link_back">
<a href="popup.php?page=scheda&pg=<?php echo gdrcd_filter('url',$_REQUEST['pg']); ?>"><?php echo gdrcd_filter('out',$MESSAGE['interface']['sheet']['link']['back']); ?></a>
</div>
<?php
}//else
/********* CHIUSURA SCHEDA **********/
?>
</div><!-- Pagina -->
Claudio
07/02/2023 20:09:26
hahahahahaah lo sapevo XD alla fine vedi soltanto segni!!grazie mille!
07/02/2023 20:12:52
darkmirror ha scritto: hahahahahaah lo sapevo XD alla fine vedi soltanto segni!!grazie mille!
Claudio
Discussione seguita da
Pagine → 1
Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
breathofspring ha aperto un annuncio di ricerca: Breath of Spring ricerca Beta Tester
✋😟
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