aggiunta voce in scheda postato il 06/03/2008 13:53:55 nel forum programmazione, gdrcd, open source, hosting
Salve ho un piccolo problema:
Allora vorrei inserire una nuova voce nella scheda "Storia Pg" in modo che ogni iscritto possa scrivere la storia del suo personaggio.
Io nella scheda ho aggiunto il link che porta a questa pagina e nella parte dove si modifica la scheda ho inserito un nuovo form per permettere ai player di scrivere:
} ?>
<? if ($upd) {
echo "<tr><td align=center colspan=3>Storia Pg<br>";
echo "<textarea cols=100 rows=5 name="storia">".htmlspecialchars($rs["Storia"])."</textarea>";
echo "</td></tr>";
} ?>
Il codice praticamente è uguale a quello per il form degli affetti solo che al posto di "affetti" nel codice ho inserito "storia".
Poi sono andato nel DB e nella query del personaggio ho inserito la voce storia esattamente come è scritto per gli affetti.
Fatto tutto ho salvato ma quando vado a scrivere nel form della storia e faccio modifica nella pagina dove dovrebbero uscire le scritte nn compare nulla. Tornando in modifica, poi neanche rimane il testo scritto in precedenza...
Qualcuno potrebbe aiutarmi?
Thanks a lot!
Pagine → 1
06/03/2008 14:32:52
Bhe innanzitutto: hai richiamato la query nella pagina in cui visualizzi la storia? hai controllato che nel database scriva la storia? Facci sapere.
06/03/2008 14:39:50
allora nella pagina storia ( che praticamente è uguale a quella degli affetti perchè l'ho ricopiata pari pari) c'è la query e dove nel codice precendente c'era scritto Affetti ho sostituito con "Storia"!
Ora ho controllato nel DB...e non c'è scritto nulla nella parte di Storia...ho anche provato a scrivere direttamente dal DB...ma nella pagina sul gdr nn compare nulla!
06/03/2008 14:55:17
Cioè hai creato nella tabella che vai a leggere un campo chiamato storia?
06/03/2008 15:10:47
Nel DB ho aggiunto alla query del Personaggio:
"Storia" tipo:TEXT --null: Si-- predefinito: Null
Nella parte di scheda dove si modifica la pass gli affetti la storia ho aggiunto questo codice:
} ?>
<? if ($upd) {
echo "<tr><td align=center colspan=3>Storia Pg<br>";
echo "<textarea cols=100 rows=5 name="storia">".htmlspecialchars($rs["Storia"])."</textarea>";
echo "</td></tr>";
} ?>
e nella pagina dove si dovrebbe leggere la storia ho messo:
<? session_start();
include ('inc/parametri.inc.php');
include ('inc/controllo.php');
$Login=$_SESSION['Login'];
$pg=$_REQUEST['pg'];include ('inc/open2.php');
$pg = trim($pg);
$MySql = "SELECT Affetti FROM Personaggio WHERE Nome = '".pars($pg)."'";
$result = mysql_query($MySql);
$rs = mysql_fetch_array($result);
if ((trim($pg) == "") or !($rs)) {
$rs->close;
mysql_close;
echo("<script><!--
history.back();
//-->
</script>");
exit();
};
#########################################
# Il Recordset non è vuoto #
#########################################
include ('inc/header.html.inc.php');
?>
<title>Affetti di <?= $pg ?></title>
</head>
<body style="background-image: url(img/scheda.jpg);">
<br><br><br><br><br><br><br><center>
<font class=Titolo>Storia di
<?= $pg ?>
</font>
<div align=center style="width:650; height: 380; overflow: auto;"> <center>
<?
if ((trim($rs["Storia"]."") == "") and !$upd) {
echo(" ");
} else {
echo(str_replace("
", "<br>", $rs["Storia"]));
} ?>
</div>
<a href="scheda.php?pg=<?= urlencode($pg) ?>">torna al diario</a></center>
</body>
</html>
06/03/2008 16:09:08
è completamente sbagliata la stringa sql
così come l'hai copiaincollata tu carica dal db solo la colonna Affetti.
06/03/2008 16:23:00
ecco e come dovrebbe essere la stringa esatta?
06/03/2008 16:29:49
$MySql = "SELECT Storia FROM Personaggio WHERE Nome = '".pars($pg)."'";
06/03/2008 16:52:19
ehm allora...ho fatto la modifica ed ora se posto la storia sul DB...si riesce a leggere mentre se provo a cambiarla in modifica schede...non mi fa cambiare nulla e mi lascia quello scritto nel DB. Come mai?
Ecco il codice, credo che debba inserire quella stringa anche qua, ma non capisco dove...ho provato nella parte Mysql...ma mi da errore poi nella pagina!
<? session_start();
include ('inc/parametri.inc.php');
include ('inc/controllo.php');
include ('inc/open2.php');
$pg=$_REQUEST['pg'];
$Login=$_SESSION["Login"];
$pg = trim($pg);
$Modifica = trim($Login);
$upd = ((strtoupper($pg) == strtoupper($Login)) and (trim($pg) != "") and (strtoupper($Modifica) == strtoupper($pg)));
function barra($valore, $maxvalore)
{
$colore = "5A7150";
$colore1 = "646763";
$bar = '<table cellpadding=0 cellspacing=0 border=0 width="'.$valore.'" height=10>';
$bar .= '<tr><td align=right bgcolor="'.$colore.'" width=';
if ($valore > 100) {
$bar .= '100><font color=black>+</font>';
}
else
{
$bar .= $valore.'><img src='img/spacer.gif' width='.$valore.' height=1>';
};
$bar .= "</td>";
if (($maxvalore - $valore) > 0) {
$bar .= '<td align=right bgcolor="'.$colore1.'" width=';
$bar .= ($maxvalore - $valore).'><img src='img/spacer.gif' width='.($maxvalore-$valore).' height=1>';
$bar .= "</td>";
};
$bar .= "</tr>";
$bar .= "</table>
";
return $bar;
};
$MySql = "SELECT Personaggio.*, Razza.Razza, Razza.URLImg AS URLImgRazza, Gilda.Gilda, Gilda.URLImg AS URLImgGilda
FROM Personaggio
LEFT JOIN Razza
ON Personaggio.IDRazza = Razza.IDRazza
LEFT JOIN Gilda
ON Personaggio.IDGilda = Gilda.IDGilda
WHERE Nome = '".pars($pg)."'";
$result = mysql_query($MySql);
$rs = mysql_fetch_array($result);
if ((trim($pg) == "") or !($rs)) {
$rs->close;
mysql_close;
echo("<script><!--
history.back();
//-->
</script>");
exit();
};
#########################################
# Il Recordset non è vuoto #
#########################################
$UrlImg = trim($rs["URLImg"]);
If ($UrlImg == "")
$UrlImg = "img/sagoma".$rs["Sesso"].".gif";
$UrlImgRazza = trim($rs["URLImgRazza"]);
If ($UrlImgRazza == "")
$UrlImgRazza = "spacer.gif";
$UrlImgGilda = trim($rs["URLImgGilda"]);
If ($UrlImgGilda == "")
$UrlImgGilda = "nessuno.gif";
$Gilda = trim($rs["Gilda"]);
if ($Gilda == "") {
if (strtolower($rs["Sesso"]) == "f") {
$Gilda = "Cittadina delle Libere Terre";
} else {
$Gilda = "Cittadino delle Libere Terre";
}
}
include ('inc/header.html.inc.php');
?>
<title>Modifica Scheda <?= $pg ?></title>
</head>
<body style="background-image: url(img/scheda.jpg); color: black;">
<br><br><br><br><br><center>
<div align=center style="width:650; height: 450; overflow: auto;">
<center>
<!--table border=0 cellpadding=2 cellspacing=2 class=tScuro>
<tr>
<td bgcolor=black><a href="scheda.php?pg=<?= urlencode($pg) ?>">Scheda Personaggio</a></td>
<td bgcolor=black><a href="scheda2.php?pg=<?= urlencode($pg) ?>">Oggetti</a></td>
<? if (strtoupper($pg) == strtoupper($Login)) { ?>
<td>Modifica</td>
<td bgcolor=black><a href="scheda4.php?pg=<?= urlencode($pg) ?>">Movimenti</a></td>
<td bgcolor=black><a href="scheda5.php?pg=<?= urlencode($pg) ?>">Punti</a></td>
<? } ?>
</tr></table><br><br-->
<!--? if (!($upd)) {exit();} ?--><!-- controllo identita'-->
<table border="0" bordercolor="#F8E9AA" cellspacing="0" cellpadding="2" width="620">
<tr class=tScuro>
<td align=center colspan=3><font class=Titolo><img src="img/testamini<?= strtolower($rs["Sesso"]) ?>.gif"> <?= htmlspecialchars($rs["Nome"]) ?></font></td>
</tr>
<!--? if ($upd || $master==1) { ?-->
<form action="scheda.php?pg=<?= urlencode($pg) ?>" method="POST">
<!--input type="hidden" name="pg" value=""-->
<?if($upd) { ?>
<tr>
<td align=center>Cognome<br> <input type="text" name="cognome" maxlength="40" value="<?= htmlspecialchars($rs["Cognome"]) ?>"></td>
<td align=center>data di nascita (gg/mm/aaaa):<br><input Name="gg" size=2 maxlength=2><input Name="mm" size=2 maxlength=2><input Name="aaaa" size=4 maxlength=4></td>
<td align=center colspan=2>Password<br><input type="password" name="pass" maxlength="50" value="<?= htmlspecialchars($rs["Pass"]) ?>"></td>
</tr>
<?
if (($rs["DataNascita"] == "") || ($rs["DataNascita"] == "0000-00-00")) {
?>
<? } } ?>
<?if ($upd) {
echo "<tr> <td align=center colspan=3>Profilo<br>";
if ($upd) {
echo "<textarea cols=100 rows=5 name="descrizione">".htmlspecialchars($rs["Descrizione"])."</textarea>";
} else {
echo htmlspecialchars($rs["Descrizione"]);
}
echo "</td></tr>";
}?>
<? if ($upd) {
echo "<tr><td align=center colspan=3>Affetti<br>";
echo "<textarea cols=100 rows=5 name="affetti">".htmlspecialchars($rs["Affetti"])."</textarea>";
echo "</td></tr>";
} ?>
<? if ($upd) {
echo "<tr><td align=center colspan=3>Storia Pg<br>";
echo "<textarea cols=100 rows=5 name="storia">".htmlspecialchars($rs["Storia"])."</textarea>";
echo "</td></tr>";
} ?>
<? if ($_SESSION['Master'] == '1') { ?>
<tr>
<td align=center colspan=3>Status<br> <?
if ($rs["Capacita"]==""){$rs["Capacita"]="Nella norma";}
echo "<textarea cols=100 rows=3 name="capacita">".htmlspecialchars($rs["Capacita"])."</textarea>";
echo "Punti Ferita Attuali: <input Name='PF' size=3 maxlength=3 value=".htmlspecialchars($rs["MaxMente"]).">"; echo "/".htmlspecialchars($rs["MaxForza"]);
?></td>
</tr>
<? } ?>
<? if ($upd) { ?>
<tr>
<td align=center colspan=3>URL Immagine/URL MIDI<br> <input type="text" name="urlimg" maxlength="255" value="<?= htmlspecialchars($rs["URLImg"]) ?>" size=50><input type="text" name="midi" maxlength="100" value="<?= htmlspecialchars($rs["Midi"]) ?>" size=50></td>
</tr>
<? } ?>
<? if ($upd||$_SESSION['Master'] == '1') { ?>
<tr>
<td align=center colspan=3><input type="Submit" value="Modifica <?= $pg ?>"></td>
</tr>
</form>
<? } ?></table>
<? $rs->close;
?>
</div><a href="scheda.php?pg=<?= urlencode($pg) ?>">torna al diario</a></center>
</body>
</html>
06/03/2008 19:15:31
non ho ben guardato il codice cmq sapendo un pochetto come è strutturato gdrcd... dovresti modificare la riga 214-215... ovvero.. li trovi il codice di update... se noti al di sotto sono elecati i vari cmapi che vanno ad essere sovrascritti nel db... devi solamente aggiungere il campo storia... cosi:
riga 214-223
$MySql = "UPDATE Personaggio";
$MySql .= " SET Pass = '".$pass."',";
$MySql .= " Descrizione = '".$descrizione."',";
$MySql .= " Affetti = '".$affetti."',";
$MySql .= " Capacita = '".$capacita."',";
$MySql .= " ICQ = '".$icq."',";
//$MySql .= " MaxMente = '".$PF."',";
$MySql .= " Cognome = '".$cognome."',";
$MySql .= " Midi = '".$midi."',";
$MySql .= " UrlImg = '".$urlimg."'";
modificala cosi:
$MySql = "UPDATE Personaggio";
$MySql .= " SET Pass = '".$pass."',";
$MySql .= " Descrizione = '".$descrizione."',";
$MySql .= " Affetti = '".$affetti."',";
$MySql .= " Capacita = '".$capacita."',";
$MySql .= " ICQ = '".$icq."',";
//$MySql .= " MaxMente = '".$PF."',";
$MySql .= " Cognome = '".$cognome."',";
$MySql .= " Midi = '".$midi."',";
$MySql .= " Storia = '".$storia."',";
$MySql .= " UrlImg = '".$urlimg."'";
06/03/2008 20:52:15
ok volevo ringraziare tt! ^_^
Problema risolto!
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD, Open Source, Hosting Elenco Forum
venus dormiens ha aperto un annuncio di ricerca: Origo Haeredis - Harry Potter Gdr ricerca Giocatore
Metin2: Server Boost Yohara – Dettagli e FAQ
DarkOrbit → Galassie remote e pericoli in agguato ti attendono. Vinci battaglie avvincenti in DarkOrbit: diventa un cosmonauta temerario e combatti!
Sea of Conquest: Ci dai una mano ai #PocketGamer Awards 2024?
goldaries ha recensito Games of Thrones Winter is Coming
spike92 ha recensito Il Grande Blu
World of Warship: Aggiornamento 13.11: anteprima
Hero Wars → Costruisci la tua squadra di eroi leggendari e domina il campo di battaglia! Strategia, tattica e potenza si scontrano in questo RPG ricco di azione!
gdr-online.com ha risposto alla discussione: Parere su BrowserGame
W40K Dathyar: Specializzazioni
NosTale: Ora nel NosMall: dolcissimi mini-pet
DarkOrbit: Aggiorna la scatola dell'Apocalisse!
Game of Thrones → Pronto a diventare il Signore dei Sette Regni? Guida la tua grande casata in epiche battaglie PvP ed esplora il mondo di Westeros!
I dati del generatore di rank sono stati aggiornati!
aik ha aperto una nuova discussione: Parere su BrowserGame
eXtremelot: La Bussola dei Cartografi di Lot
Dallas Black Gold: [Trama] JFK Memorial
Game of Thrones → Pronto a diventare il Signore dei Sette Regni? Guida la tua grande casata in epiche battaglie PvP ed esplora il mondo di Westeros!
Come giocare Online - Alcune semplici e chiare regole per giocare al meglio ad un gdr online!
L'Overtime a Roma - La trasmissione radiofonica TheClub parla della ludoteca Overtime e dei Play by Chat
Anello di Cthulhu - L'Anello di Cthulhu. Il mito religioso in Tolkien e Lovecraft!
Velocità dei Browser - Scopriamo le statistiche su i browser più veloci per giocare!
eXtramondo - Intervista ai gestori del GdR Terre di eXtramondo. Entra nel mondo di Tolkien con oltre 2.000 locazioni disponibili!
The Young Riders Italia - Intervista alla gestione del play by email western The Young Riders Italia