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
ayakashi si è accreditato come gestore di We love Tokyo
La Tana del Ladro: TdL Stories - Le Solite Fandonie
Crossout → Tuffati nel mondo di Crossout, il gioco MMO d'azione post apocalittico! Costruisci le tue speciali macchine da combattimento!
shiny fluff ha recensito Age of Crystals
Enlisted: Miglioramento dell'operazione "Leadstorm"
Lineage II: Evento di Benedizione dell'Arcangelo
I dati del generatore di rank sono stati aggiornati!
Storie di Agarthi → Un Varco si apre davanti a te, un mondo tra i mondi è a portata di mano. Lasciati alle spalle le certezze, inizia l'avventura!
Il gestore di La Tana del Ladro ha risposto alla recensione di elyionar
Cleveland City: Nuova Organizzazione, nuove Chat e nuovi Master
Ex Gratia GDR: Revisione Poteri: Mutazione, Mentali e Utility
Il gestore di Ex Gratia GDR ha risposto alla recensione di deanna
Crossout → Tuffati nel mondo di Crossout, il gioco MMO d'azione post apocalittico! Costruisci le tue speciali macchine da combattimento!
Exclusive Villa GdR: Un morto, nessuna notizia... troppi segreti?
World of Warship: Cantiere navale: Blücher
Enlisted: Operazione "Leadstorm"
naemaer ha recensito La Tana del Ladro
OGame → In OGame migliaia di giocatori da tutto il mondo competono tra di loro per conquistare l'intero universo!
Naruto GDR - Intervista a Takkero, gestore di uno dei più grandi e longevi play by chat su Naruto!
My Hero Academia GDR - Intervista al forunder del play by forum My Hero Academia GDR Become a Hero!
New Dojinshi - Intervista al gestore di New Dojinshi uno dei GdR play by chat di categoria Hentai più seguiti!
Never Have I Ever - Intervista alla gestrice di Never Have I Ever, il play by chat ambientato in una scuola del 1999!
CRSED: F.O.A.D. - Brutale sparatutto MMO in cui vince l'ultimo giocatore che resta in vita nell'arena! Ogni giocatore sarà accompagnato da armi realistiche e magie!
Title Design - Da Saul Bass a Game of Thrones il title design come nuova frontiera della creatività contemporanea
Giochi Manageriali - Giochi sportivi manageriali: una passione senza tempo!
Intervista GDRCD 5.5 - Intervista allo sviluppatore del nuovo GDRCD 5.5.. Breaker!