richiamo nome e immagine avatar
richiamo nome e immagine avatar postato il 15/03/2018 19:15:44 nel forum programmazione, open source e hosting e modificato da gdr-online.com il 16/03/2018 09:33:00
salve a tutti, vorrei inserire un div sopra quello dei messaggi dove appare il nome avatar del giocatore e in basso l'immagine. Ora per il richiamo dal database si potrebbe procedere così...
<div class="ritratto_nome">
<span class="ritratto_nome_nome">
<?php echo gdrcd_filter('out',$record['nome']); ?>
</span>
<div class="ritratto_avatar">
<img src="<?php echo $record['url_img']; ?>" class="ritratto_avatar_immagine" />
</div>
ora il problema credo sia il richiamo della query che non capisco dove sia l'errore...se io all'inizio della pagina faccio così...
<?php
/********* CARICAMENTO PERSONAGGIO ***********/
//Se non e' stato specificato il nome del pg
if (isset($_REQUEST['pg'])===FALSE){
echo '<div class="error">'.gdrcd_filter('out',$MESSAGE['error']['unknown_character_sheet']).'</div>';
} else {
$query = "SELECT personaggio.*, razza.sing_m, razza.sing_f, razza.id_razza, razza.bonus_car0, razza.bonus_car1, razza.bonus_car2, razza.bonus_car3, razza.bonus_car4, razza.bonus_car5, nazione.sing_m AS nazionem, nazione.sing_f AS nazionef, nazione.immagine AS imgnazione, nazione.id_nazione
FROM personaggio
LEFT JOIN razza ON personaggio.id_razza=razza.id_razza
LEFT JOIN nazione ON personaggio.id_nazione=nazione.id_nazione
WHERE personaggio.nome = '".gdrcd_filter('in',$_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>';}
else {
$record = gdrcd_query($result, 'fetch');
gdrcd_query($result, 'free');
if (isset($_REQUEST['op'])===FALSE){
?>
il problema è che mi da errore su linea etc...magari potrebbe mancare una chiusura di div ma non so....ringrazio in anticipo per l'aiuto.
Pagine → 1
15/03/2018 19:56:02
<div class="ritratto_nome">
<span class="ritratto_nome_nome">
<?php echo gdrcd_filter('out',$record['nome']); ?>
</span>
<div class="ritratto_avatar">
<img src="<?php echo $record['url_img']; ?>" class="ritratto_avatar_immagine" />
</div>
Se il codice che hai inserito è questo... sì, non hai chiuso il div <div class= "ritratto_nome">
Comunque, la variabile $_REQUEST['pg'] non puoi usarla se non hai un pg specificato: se guardi nella scheda di un pg nella barra di navigazione l'indirizzo finisce con "&pg=Seralia" e quel pezzettino diventa quello che "popola" $_REQUEST['pg'].
Per usare il pg del personaggio con cui si è loggati devi usare $_SESSION['login']
16/03/2018 18:39:36 e modificato da gdr-online.com il 19/03/2018 12:22:23
allora ho modificato il codice dato che mettendo la stringa login non andava lo stesso...ora il codice pagina è questo ma purtroppo non mostra ne il nome ne l'immagine...ho creato dei div appositima il risultato è che non fa vedere nulla , però non c'è errore di php....
<?php /*HELP: */
$row = gdrcd_query("SELECT nome AS data FROM personaggio WHERE nome = '".$_SESSION['login']."'");
$nome=$row['nome'];
$email=$row['email'];
$pass=$row['pass'];
$iscriz=explode(' ',$row['data']);
$iscriz=$iscriz['0'];
?>
<div class="nome_main">
<?php echo gdrcd_filter('out',$record['nome']); ?>
</div>
<div class="avatar_main">
<img src="<?php echo $record['url_img']; ?>" class="ritratto_avatar_immagine" />
</div>
17/03/2018 01:33:28 e modificato da gdr-online.com il 19/03/2018 12:22:15
<?php /*HELP: */
$record = gdrcd_query("SELECT nome, url_img AS data FROM personaggio WHERE nome = '".$_SESSION['login']."'");
$nome=$record['nome'];
?>
<div class="nome_main">
<?php echo gdrcd_filter('out',$record['nome']); ?>
</div>
<?php
$record = gdrcd_query("SELECT url_img_main AS data FROM personaggio WHERE nome = '".$_SESSION['login']."'");
$url_img_main=$record['url_img_main'];
?>
<div class="avatar_main">
<a href="javascript:modalWindow('Scheda', 'Scheda di <?php echo gdrcd_filter('in', $_SESSION['login']);?>', '../popup.php?page=scheda&pg=<?php echo gdrcd_filter('in', $_SESSION['login']);?>');"><img src="<?php echo gdrcd_filter('fullurl', $record['url_img_main']);?>
"></a>
</div>
allora inserendo questo codice e dopo varie prove, il nome appare si in alto, l'immagine invece non esce fuori...eppure ne ho provate di tutti i colori..
17/03/2018 10:20:42
gestionesexandmafia ha scritto: <?php /*HELP: */
$record = gdrcd_query("SELECT nome, url_img AS data FROM personaggio WHERE nome = '".$_SESSION['login']."'");
$nome=$record['nome'];
?>
Leggi la query che hai scritto.
Stai estraendo:
- nome
- url_img AS data
Quindi non puoi richiamare url_img perché nella query lo hai rinominato data. Togli l'aliaa (cioè AS data) che è probabilmente un refuso di un copiaincolla
18/03/2018 17:41:10 e modificato da gdr-online.com il 19/03/2018 12:22:58
allora dopo altre prove finalmente tutto funziona e così posso dare una dritta a tutti.
1 passo...andare nel database e nella tabella personaggio, dopo url_img creare un campo chiamato url_img_main, lunghezza 255, as defined imgs/avatars/main.png (questo per poter inserire una immagine da far vedere agli iscritti con le dimensioni da noi prestabilite.Le dimensioni sono a vostra scelta e si impostano come vedremo nel file css.
2 passo. andate nel file css e caricate i seguenti div...
div.nome_main {
margin:5px auto;
padding:10px;
width:180px;
background:none;
color:#FFFFFF;
text-align: center;
font-size: 18px;
border:solid 1px #ffffff;
-moz-border-radius:5px; /* Bordi arrotondati */
-webkit-border-radius:5px;
-khtml-border-radius: 5px;
border-radius:5px;
}
div.avatar_main {
margin:0px auto;
padding:0px;
width: 190px;
height: 150px;
overflow: hidden;
background:none;
border:solid 1px #ffffff;
-moz-border-radius:5px; /* Bordi arrotondati */
-webkit-border-radius:5px;
-khtml-border-radius: 5px;
border-radius:5px;
}
vi ricordo che il file main si trova in themes/advanced. Qui potete regolare l'aspetto graficoe altre cose, agendo sul codice css senza che si fanno danni al codice.
3 passo andiamo nel file config e cerchiamo esattamente le impostazioni delle colonne. Infine stabilito dove vogliamo inserire il nome pg e il suo avatar possiamo scrivere...
$PARAMETERS['left_column']['box']['avatar']['class'] = 'avatar';
$PARAMETERS['left_column']['box']['avatar']['page'] = 'main_avatar';
basta ricopiare il codice qui sopra e sostituire left con right se sta a destra o top se lo vogliamo in alto.
4 passo ora non ci resta che caricare il file main_avatar nella cartella pages. Qui sotto trovate l'intero codice che potete anche incollare in blocco note di windows e salvarlo con il nome main_avatar.inc.php (selezionare qui sotto il codice da ricpoiare.)
<?php /*HELP: */
$record = gdrcd_query("SELECT nome, url_img AS data FROM personaggio WHERE nome = '".$_SESSION['login']."'");
$nome=$record['nome'];
?>
<div class="nome_main">
<?php echo gdrcd_filter('out',$record['nome']); ?>
</div>
<?php
$record = gdrcd_query("SELECT url_img_main FROM personaggio WHERE nome ='".$_SESSION['login']."'");
$url_img_main=$record['url_img_main'];
?>
<div class="avatar_main">
<a href="javascript:modalWindow('Scheda', 'Scheda di <?php echo gdrcd_filter('in', $_SESSION['login']);?>', '../popup.php?page=scheda&pg=<?php echo gdrcd_filter('in', $_SESSION['login']);?>');"><img src="<?php echo gdrcd_filter('fullurl', $record['url_img_main']);?>
"></a></div>
come potete notare il link all'immagine è in pop up il che permette di aprire la scheda pg con scheda modale.Se non vogliamo nessun link basta togliere la riga a href...lasciando soltanto la stringa di richiamo dell'immagine <img src....
spero sia utile a tutti.Ringrazio a chi mi ha risposto e mi ha dato anche l'aspirazione per trovare la soluzione.
19/03/2018 12:23:46
gestionesexandmafia se usi il tag "CODE" quando metti parti di codice rendi il tutto molto più leggibile e fruibile. Ti ho corretto tutti i post. La prossima volta non dimenticarti la funzione ;)
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Neverness to Everness ↗
Foundation Galactic Frontier ↗
Crossout ↗
Fallen Gods ↗
Project Entropy ↗
World of Tanks ↗