Preclusione accesso chat
Preclusione accesso chat postato il 01/09/2011 15:02:34 nel forum programmazione, open source e hosting e modificato da suspy1986 il 02/09/2011 09:14:37
Ciao a tutti, ho un problema, allora purtroppo non riesco a caricare la pagina d'iscrizione nella mia home page, nel senso che a livello di programmazione sembra che funzioni ma quando vado a caricarla sul sito proprio non appare, come se fosse invisibile. Mi appare al suo posto la pagina di recupero pass e se metto un'altra pagina di prova per l'iscrizione mi appare correttamente ma mi compare "sopra" la pagina di recupero password ( scrollando in basso infatti vai al recupero pass ).
Se premo su Recupero pass mi da invece una pagina vuota. Da qui e' sorto il dubbio che l'iscrizione sia intangibile e mi scali in alto il recupero pass e se premo recupero pass mi da la pagina vuota perche' e' scivolata piu' in alto.
Grazie anticipatamente a chi mi aiuterà in questo problema.
Pagine → 1
01/09/2011 15:21:25
Non è per essere scortesi, ma il codice della comunità che rappresenti è non poco personalizzato e potrebbe dipendere da qualsiasi cosa.
Anche copiare qualche spezzone di sorgente in merito potrebbe non essere risolutivo ai fini della questione.
Il mio consiglio è di usare il modulo di ricerca staff per trovare un programmatore che si appassioni al progetto ( o che vogliate pagare per un po di manutenzione, non so ) e possa sistemarvi tutto ciò che non va.
Su questa strada altrimenti rischi solo di tornare a chiedere le stesse cose ancora e ancora su questo forum.
01/09/2011 17:07:33
Ringrazio intanto le precedenti risposte seppure non sia riuscita a risolvere il problema.
Pero' lavorando su altro ho un dubbio sempre di programmazione che forse e' gia' piu' facile da risolvere.
Questa e' la parte di programmazione in merito
elseif ($Condizione == 'pvtlussuria') {
$stanzapv = $_SESSION['Stanza'];
$oggacc = substr($stanzapv,2,2);
$MySql1 = "SELECT * FROM Personaggio WHERE IDCasata = '3000'";
$Result1 = mysql_query($MySql1);
if ($rs1 = mysql_fetch_array($Result1)) { #verifica se l'utente login ha l'oggetto di casata
mysql_free_result($Result1);
} else { #non lo ha quindi fuori
#echo $MySql1."<br />";
echo "<center><font class='sottoTitolo'>No Lussuria? No Party!</font></center>";
echo "</div>";
echo "-_-_-";
echo "<center><font class='Titolo'>".$luogopicc."</font><br /><font size=1>".$stato."</font>";
echo "-_-_-";
echo "<img src="img/luoghi/".$immaginepicc."" style="margin: 0pt 0px 0px 0pt; border:5px ridge #495883;" onmouseover="Tip('<p align=justify>".$descrpicc."</p>')">";
echo "-_-_-";
echo "0";
exit();
}
}
In pratica se la condizione della stanza di chat risulta avere il valore "pvtlussuria" mi va a cercare sul Db se l'IDCasata del personaggio corrisponde al 3000. In tal caso entra se no da errore. Fin qui tutto ok. Il problema sorge che mi servirebbe il modo di poter mettere piu' condizioni alla stringa ( IDCasata 3002,3003 etc) ed anche che mi vada a controllare se uno ha il valore Master ( sempre sul db) del gestore. Semplicemente aggiungendo una condizione non la legge dato che controlla la prima parte e da l'errore non andando a controllare l'eventualità sulla seconda parte. Il comando del Select ha la possibilità di mettere i classici "or" per dare modo di controllare in una volta sola piu' dati sul db prima di dar l'errore?
01/09/2011 17:34:44
devi aggiungere un'altra condizione per il master
01/09/2011 17:39:48 e modificato da suspy1986 il 01/09/2011 17:40:51
amer ha scritto: devi aggiungere un'altra condizione per il master
Ho gia' provato ad aggiungere a questo codice un ulteriore else if per il master ma mi da l'errore perche' va a controllare per primo l'idcasata e li si blocca. Io speravo di trovare un sistema per dare nello stesso ambito della condizione 'pvtlussuria' piu' possibilità di scelta fra valori in db.
Veniva una cosa del genere per intenderci:
elseif ($Condizione == 'pvtlussuria') {
$stanzapv = $_SESSION['Stanza'];
$oggacc = substr($stanzapv,2,2);
$MySql1 = "SELECT * FROM Personaggio WHERE IDCasata = '3000'";
$Result1 = mysql_query($MySql1);
if ($rs1 = mysql_fetch_array($Result1)) { #verifica se l'utente login ha l'oggetto di casata
mysql_free_result($Result1);
} else { #non lo ha quindi fuori
#echo $MySql1."<br />";
echo "<center><font class='sottoTitolo'>No Lussuria? No Party!</font></center>";
echo "</div>";
echo "-_-_-";
echo "<center><font class='Titolo'>".$luogopicc."</font><br /><font size=1>".$stato."</font>";
echo "-_-_-";
echo "<img src="img/luoghi/".$immaginepicc."" style="margin: 0pt 0px 0px 0pt; border:5px ridge #495883;" onmouseover="Tip('<p align=justify>".$descrpicc."</p>')">";
echo "-_-_-";
echo "0";
exit();
}
}elseif ($Condizione == 'pvtlussuria') {
$stanzapv = $_SESSION['Stanza'];
$oggacc = substr($stanzapv,2,2);
$MySql1 = "SELECT * FROM Personaggio WHERE Master = '1'";
$Result1 = mysql_query($MySql1);
if ($rs1 = mysql_fetch_array($Result1)) { #verifica se l'utente login ha l'oggetto di casata
mysql_free_result($Result1);
} else { #non lo ha quindi fuori
#echo $MySql1."<br />";
echo "<center><font class='sottoTitolo'>No Lussuria? No Party!</font></center>";
echo "</div>";
echo "-_-_-";
echo "<center><font class='Titolo'>".$luogopicc."</font><br /><font size=1>".$stato."</font>";
echo "-_-_-";
echo "<img src="img/luoghi/".$immaginepicc."" style="margin: 0pt 0px 0px 0pt; border:5px ridge #495883;" onmouseover="Tip('<p align=justify>".$descrpicc."</p>')">";
echo "-_-_-";
echo "0";
exit();
}
}
01/09/2011 19:40:15
Riguardo al primo problema espresso ( quello che la pagina di registrazione non si visualizza) posto qui di seguito il codice della suddetta pagina "invisibile" sperando possa essere d'aiuto per capirne un po' di piu' che mi sta facendo impazzire.
<? session_start();
include ('inc/parametri.inc.php');
include ('inc/open2.php');
include ('inc/header.html.inc.php');
$step=$_POST['step'];
switch ($step) {
case "1":
?>
<title><?= htmlspecialchars($par_SiteName) ?></title>
</head>
<body topmargin="0" bgcolor=#333333 >
<center>
<br><br>
<div style="background-image: url(img/scheda.jpg); color: black; width:400; height:300; ">
<br><br><br><br><br><br>
<center><font class=titolo><?= htmlspecialchars($par_SiteName) ?> - Iscrizione</font><br>
<br>
<p align="justify">
Ora puoi registrare i dati del "Personaggio" che andrai a interpretare nel gioco. Non inserire quindi i tuoi dati, ma quelli relativi al "PG" (vedi regolamento in homepage) che muoverai nel gioco:</p>
<form id="regi1form" name="regi1form" onSubmit="return false;" action="">
<table align="center" border="0" cellspacing="4">
<tbody>
<tr>
<td align="left" width="60">Nome</td>
<td><input name="nomepg" maxlength="25" type="text" width="200" onFocus="clear_field(this)" onBlur="check_field(this)"></td>
<td rowspan="3" align="justify"><i>Il <b>Nome</b> del tuo PG deve essere singolo e senza spazi. Il <b>Cognome</b> può essere composto da più parole. E` obbligatorio usare nomi consoni all`ambientazione, Londra, 1846. Alla <b>Email</b> inserita riceverai la password di gioco, che viene crittografata nel database.</i></td>
</tr>
<tr>
<td align="left" width="60">Cognome</td>
<td><input name="cognomepg" maxlength="25" type="text" width="200" onFocus="clear_field(this)" onBlur="check_field(this)"></td>
</tr>
<tr>
<td align="left" width="60">Email</td>
<td><input name="emailpg" maxlength="50" type="text" width="200" onFocus="clear_field(this)" onBlur="check_field(this)"></td>
</tr>
</tbody>
</table>
<table align="left" border="0" cellspacing="4">
<tbody>
<tr>
<td align="left" width="100"><input type="radio" name="sessopg" value="m" checked>Maschio</td>
<td align="right" width="100">Femmina<input type="radio" name="sessopg" value="f"></td>
</tr>
</tbody>
</table>
<br /><br /><br />
<center>
<input type="submit" onClick="return validate_form()" class='pulsantesubmit' name="inviadati1" value="Registrati"> <INPUT TYPE='reset' VALUE='Cancella' class='pulsantesubmit'>
</center>
</form>
<?
break;
case "2":
include("inc/controlloesilio.php");
$nomepgok = $_POST['nomepg'];
$nomepgok = utf8_decode($nomepgok);
$nomepgok = ucfirst(strtolower($nomepgok));
$cognomepgok = $_POST['cognomepg'];
$cognomepgok = ucfirst(strtolower($cognomepgok));
$emailpgok=$_POST['emailpg'];
$sessopgok=$_POST['sessopg'];
$nomepgok=trim($nomepgok);
$cognomepgok=trim($cognomepgok);
$emailpgok=trim($emailpgok);
if (!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $emailpgok)) {
echo "<br />Indirizzo email NON valido.<br />Ricomincia l'iscrizione e inserisci un indirizzo email corretto.<br />";
exit;
}
function NomeCorretto($car) {
$TempBool = False;
$TempBool = ($TempBool || (ord($car) >= ord("A") && ord($car) <= ord("Z")));
$TempBool = ($TempBool || (ord($car) >= ord("À") && ord($car) <= ord("Â")));
$TempBool = ($TempBool || (ord($car) >= ord("È") && ord($car) <= ord("Ê")));
$TempBool = ($TempBool || (ord($car) >= ord("Ì") && ord($car) <= ord("Î")));
$TempBool = ($TempBool || (ord($car) >= ord("Ò") && ord($car) <= ord("Ô")));
$TempBool = ($TempBool || (ord($car) >= ord("Ù") && ord($car) <= ord("Û")));
return($TempBool);
}
for ($i = 0; $i < strlen($nomepgok); $i++) {
$c = substr(strtoupper($nomepgok), $i, 1);
if (!(NomeCorretto($c))) {
echo $nomepgok."<br /><br />Il nome contiene il carattere "".htmlspecialchars($c)."" non consentito.<br />Riprova cambiando nome.<br /><br /><a href='' onclick="registrazione('1')">Ricomincia</a>";
exit;
}
}
$MySql = "Select Nome FROM Personaggio WHERE Nome = '".pars($nomepgok)."'";
$Result = mysql_query($MySql);
$rs = mysql_fetch_array($Result);
if ($rs) {
echo "Il personaggio ".htmlspecialchars($Nome)." è già presente.<br>Scegli un nuovo nome per il tuo pg e riprova.<br /><br /><a href='' onclick="registrazione('1')">Ricomincia</a>";
$rs->close;
break;
}
$rs->close;
$MySql = "Select Nome FROM Personaggio WHERE email = '$emailpgok'";
$Result = mysql_query($MySql);
$rs = mysql_fetch_array($Result);
if ($rs) {
echo "L'email è già stata utilizzata.<br>Usa un altro indirizzo email per il tuo pg e riprova.<br /><br /><a href='' onclick="registrazione('1')">Ricomincia</a>";
$rs->close;
break;
}
$rs->close;
?>
<p align="justify">
A questo punto, devi scegliere UNA delle tre abilità disponibili all`iscrizione. Sono state create principalmente con lo scopo di dare una caratterizzazione e diversificazione dei pg.<br />
<font size=1><i>Un pg con <u>forza</u> sarà più facilitato per gli sforzi fisici; un pg con la skill <u>mentale</u>, sarà facilitato per i ragionamenti rispetto a un pg con forza o determinazione; un pg con la skill <u>caratteriale</u>, sarà più formato quindi si potrà impuntare maggiormente attorno ai propri precetti.<br />
La scelta può anche essere fatta nell`ottica di un futuro di vampiro (mentale) o licantropo (forza), mentre un umano ottiene di più dalla skill caratteriale. Questo però non significa che un pg sia limitato nel suo futuro sviluppo. è puramente indicativo e da solo un lieve vantaggio.</i></font><br /></p>
<form id="regi2form" name="regi2form" onSubmit="return false;" action="">
<input type="hidden" name="nomepgok" value="<?=$nomepgok?>">
<input type="hidden" name="cognomepgok" value="<?=$cognomepgok?>">
<input type="hidden" name="emailpgok" value="<?=$emailpgok?>">
<input type="hidden" name="sessopgok" value="<?=$sessopgok?>">
<table align="center" border="0" cellspacing="4">
<tbody>
<tr>
<td align="left" width="200"><input type="radio" name="abstart" value="10">
<span onMouseOver="Tip('Quest individuo è portato da sempre ad utilizzare la sua forza fisica. La sua forza è leggermente maggiore rispetto agli altri individui, questo lo faciliterà maggiormente nel fare sforzi fisici.')"><b>Forza Fisica</b></span></td>
<td rowspan="3" align="justify"><i>Scorri il mouse sul nome della skill per leggere la relativa descrizione. NB: La skill scelta all`inizio rimarrà invariata per tutto il gioco.</td>
</tr>
<tr>
<td align="left" width="200"><input type="radio" name="abstart" value="20">
<span onmouseover="Tip('Quest individuo ha una elasticità mentale più allenata rispetto agli altri individui. Per questo motivo, i suoi ragionamenti possono essere più rapidi, può intuire alcune cose prima degli altri e può esser facilitato nel difendere la sua mente.')"><b>Elasticità Mentale</b></span></td>
</tr>
<tr>
<td align="left" width="200"><input type="radio" name="abstart" value="30" checked>
<span onmouseover="Tip('L individuo che possiede questa skill da sempre ha preservato le sue motivazioni e la sua fermezza riguardo alle proprie decisioni. Questo gli permette di concentrarsi sulla decisione presa e non essere intimidito e/o confuso.')"><b>Determinazione</b></span></td>
</tr>
</tbody>
</table>
<center>
<input type="submit" onClick="registrazione('3')" class='pulsantesubmit' name="inviadati2" value="Avanti"> <input type="submit" onClick="registrazione('1')" class='pulsantesubmit' name="torna2" value="Ricomincia">
</center>
</form>
<?
break;
case "3":
$nomepgok2 = $_POST['nomepg2'];
$nomepgok2 = utf8_decode($nomepgok2);
$cognomepgok2 = $_POST['cognomepg2'];
$emailpgok2 = $_POST['emailpg2'];
$sessopgok2 = $_POST['sessopg2'];
$abiniziale2 = $_POST['abiniziale'];
$abiniziale2 = trim($abiniziale2);
if ( ($abiniziale2 == 10) || ($abiniziale2 == 20) || ($abiniziale2 == 30) ) {
$ok = "ok";
} else {
echo $nomepgok2."<br />";
echo $cognomepgok2."<br />";
echo $emailpgok2."<br />";
echo $abiniziale2."<br />";
echo "è occorso un errore nella registrazione. contattare un admin all`email <a href='mailto:[email protected]'>[email protected]</a>.";
break;
}
switch ($sessopgok2) {
case "m";
$sex = "maschio";
break;
case "f";
$sex = "femmina";
break;
}
switch ($abiniziale2) {
case "10":
$skillzero = "Forza Fisica";
break;
case "20":
$skillzero = "Elasticità Mentale";
break;
case "30":
$skillzero = "Determinazione";
break;
}
?>
<p align="justify">
<u>Verificare</u> i dati fin qui inseriti. Soprattutto il <b>nome</b>, che vi servirà per accedere al gioco, e <b>l`email</b> inserita, a cui verrà inviata la password provvisoria per accedere, ma che vi raccomandiamo di modificare una volta entrati in gioco.<br /></p>
<br />
<table>
<tr>
<td width="150"><i>Nome del PG:</i></td>
<td><b><?=$nomepgok2?></b></td>
</tr>
<tr>
<td width="150"><i>Cognome del PG:</i></td>
<td><b><?=$cognomepgok2?></b></td>
</tr>
<tr>
<td width="150"><i>Sesso del PG:</i></td>
<td><b><?=$sex?></b></td>
</tr>
<tr>
<td width="150"><i>La tua email:</i></td>
<td><b><?=$emailpgok2?></b></td>
</tr>
<tr>
<td width="150"><i>Abilità iniziale:</i></td>
<td><b><?=$skillzero?></b></td>
</tr>
</table>
<br /><br />
<form id="regi3form" name="regi3form" onSubmit="return false;" action="">
<input type="hidden" name="nomepgok3" value="<?=$nomepgok2?>">
<input type="hidden" name="cognomepgok3" value="<?=$cognomepgok2?>">
<input type="hidden" name="emailpgok3" value="<?=$emailpgok2?>">
<input type="hidden" name="sessopgok3" value="<?=$sessopgok2?>">
<input type="hidden" name="abinizialeok3" value="<?=$abiniziale2?>">
<center>
<input type="submit" onClick="registrazione('4')" class='pulsantesubmit' name="inviadati3" value="Conferma e completa iscrizione"> <input type="submit" onClick="registrazione('1')" class='pulsantesubmit' name="torna3" value="Ricomincia">
</center>
</form>
<?
break;
case "4":
include("inc/controlloesilio.php");
$nomepgok4 = $_POST['nomepg3'];
$nomepgok4 = utf8_decode($nomepgok4);
$cognomepgok4 = $_POST['cognomepg3'];
$emailpgok4 = $_POST['emailpg3'];
$sessopgok4 = $_POST['sessopg3'];
$abiniziale4 = $_POST['abiniziale3'];
$abiniziale4 = $abiniziale4 + 1;
/*echo $nomepgok4."<br />";
echo $cognomepgok4."<br />";
echo $emailpgok4."<br />";
echo $sessopgok4."<br />";
echo $abiniziale4."<br />"; */
function Lettera() {
mt_srand((double)microtime()*1000000);
return(chr(mt_rand(0, 24) + ord("a")));
}
$password = Lettera();
$password .= Lettera();
$password .= Lettera();
$password .= Lettera();
$password .= Lettera();
$password .= Lettera();
$password .= Lettera();
$password .= Lettera();
$pwd = sha1($password);
$MySql = "INSERT INTO Personaggio (Nome, Cognome, Pass, DataIscrizione, L0, Sesso, Email, Banca, DataUltimaGilda) ";
$MySql .= "VALUES (";
$MySql .= "'$nomepgok4'";
$MySql .= ", '$cognomepgok4'";
$MySql .= ", '$pwd'";
$MySql .= ", NOW()";
$MySql .= ", '$abiniziale4'";
$MySql .= ", '$sessopgok4'";
$MySql .= ", '$emailpgok4'";
$MySql .= ", '$banca'";
$MySql .= ", NOW()";
$MySql .= ")";
$Result = mysql_query($MySql);
// Invio della email con password
$htmlbody = "<br /><center><img src='http://www.seven7ins.it/img/logoemail.jpg'></center><br />";
$htmlbody .= "<center>Grazie per la tua iscrizione a <b>7Sins</b>, il gioco di ruolo storico-fantasy ambientato in una ipotetica Londra del 1846, popolata da casate di vampiri e mannari.</center><br /><br>";
$htmlbody .= "<center><b>Il nome del personaggio che hai registrato è:</b><br /><h2>".$nomepgok4."</h2></center><br />";
$htmlbody .= "<center><b>La password provvisoria per accedere è:</b><br /><h2>".$password."</h2></center><br />";
$htmlbody .= "<center>Ti raccomandiamo di cambiarla una volta entrato, dalla tua scheda pg.<br>Lo staff di seven7ins è a tua disposizione per ogni dubbio, problema o chiarimento.<br>Contattaci all`email: <a href='mailto:[email protected]'>[email protected]</a><br /><hr><center><a href='http://www.seven7ins.it'>www.seven7ins.it</a></center>";
$StrBody = "
Grazie per la tua iscrizione a seven7ins, il gioco di ruolo storico-fantasy ambientato in una ipotetica Londra del 1846, popolata da casate di vampiri e mannari.
Il nome del personaggio che hai registrato è: ".$nomepgok4."
";
$StrBody .= "
La password provvisoria per accedere è: ".$password."
";
$StrBody .= "
(ti raccomandiamo di cambiarla una volta entrato, dalla tua scheda pg).
";
$StrBody .= "
Lo staff di seven7ins è a tua disposizione per ogni dubbio, problema o chiarimento. Contattaci all`email: [email protected]
";
$oggetto = "seven7ins GdR - Iscrizione del pg ".$nomepgok4;
#error_reporting(E_ALL);
$mail_from="[email protected]"; #MODIFICARE CON LA VOSTRA EMAIL DI STAFF !!!!!
$mail_subject=$oggetto;
$mail_text=$StrBody;
$mail_to=$emailpgok4;
if( mail( $mail_to, $mail_subject, $mail_text, "From: {$mail_from}
" ) ) {
echo "<br><br>Email inviata con successo.<br /><br />Se non la ricevete entro una o due ore, contattare lo staff: <a href='mailto:[email protected]'>[email protected]</a><br />"; #ANCHE QUI MODIFICARE CON VS EMAI
} else {
echo "<br><br>Si è verificato un errore nell'invio della mail. Il pg è stato registrato ma non riceverete la email. Contattare lo staff: <a href='mailto:[email protected]'>[email protected]</a><br /> <br />"; #ANCHE QUI MODIFICARE CON VS EMAIL!!!
}
// Inizio query per inserire il messaggio di benvenuto
$testoben = "Ben arrivato/a a 7Sins! <br /><u>Non rispondere a questa missiva, viene inviata in automatico.</u><br>Questo gdr è ambientato nella Londra del 1846, troverai delle indicazioni sugli usi e costumi dell`epoca cliccando sulla scritta DOCUMENTI e poi su GUIDA AL GIOCO. Prima di iniziare a giocare, è importante leggere non solo l`approfondimento storico ma anche il PROLOGO che troverai sempre nei DOCUMENTI. Nel REGOLAMENTO ON (sempre tra i DOCUMENTI) troverai la spiegazione delle skill e dei livelli, che servono per far crescere il tuo pg. Passiamo alla costruzione della scheda. Le misure per l`immagine avatar sono 200x640 pixel, e non deve pesare circa oltre 1 mb. è possibile inserire immagini anche nella scheda, usando gli appositi tag (troverai la lista dei BBCODE nel modifica scheda): le immagini che inserisci nella scheda devono essere larghe al massimo 350 pixel. La costruzione del BG (ovvero il background) del tuo PG deve essere consono al periodo storico di ambientazione; questo vale anche nella scelta dell`avatar, ovviamente NON sono ammesse foto con vestiti moderni, occhiali, auto, moto, insomma tutto quello che non è consono al periodo storico.<br /><br />Vorrei ricordare inoltre che chi arriva a Londra non è a conoscenza (certa) dell`esistenza reale di vampiri e licantropi, e non può quindi riconoscerli solo vedendoli una volta, ma deve crescere GIOCANDO per arrivare a scoprire i segreti che nasconde Londra.<br /><br />Passiamo alla mappa: la suddivisione delle zone è per Casate, non significa che se si è umani si può giocare solo nella casata degli umani, ma solo che in quel particolare luogo di Londra c`è una maggiore concentrazione di appartenenti a quella Casata.<br /><br />Cosa sono le Casate? Troverete esaurienti spiegazioni sempre tra i DOCUMENTI e poi cliccando su CASATE: c`è una spiegazione indicativa delle caratteristiche di ognuna, pregi e difetti possibili che possono aiutarvi a caratterizzare meglio il vostro pg.<br /><br />Per iniziare a muovervi nelle chat e aiutarvi negli spostamenti potete usare la MAPPA TESTUALE che trovare cliccando sulla scritta LUOGHI dove troverete l`elenco delle chat presenti. Quando arrivate in una chat, per capire bene dove siete, non dovete fare altro che passare il mouse sulla piccola immagine che torvate in basso a destra e uscirà la descrizione del luogo.<br /><br />Al vostro ingresso vi viene data una dotazione di ".$banca." sterline che potete usare per vestire il vostro pg (dal menù LUOGHI, cliccare su MERCATO); non è permesso accedere ai luoghi privati, prima di 15 giorni di presenza in land e solo CON almeno 5 giocate in pubblica.<br /><br />Nella GUIDA AL SITO che trovate sempre nei DOCUMENTI troverete una semplice spiegazione illustrata di come muovervi nella land.<br /><br />Per ogni chiarimento potete rivolgervi allo staff, troverete l`elenco Staff sempre nei DOCUMENTI cliccando su CREDITS E STAFF.<br /><br />Buon divertimento!";
$MySql1 = "INSERT INTO `Messaggi` (`Mittente` , `Destinatario` , `Spedito` , `Letto` , `Testo` ) ";
$MySql1 .= "VALUES (";
$MySql1 .= "'seven7ins Staff'";
$MySql1 .= ", '$nomepgok4'";
$MySql1 .= ", NOW()";
$MySql1 .= ", '0'";
$MySql1 .= ", '$testoben'";
$MySql1 .= ")";
#echo $MySql1;
$Result1 = mysql_query($MySql1);
// Fine
echo "<br>Registrazione sul sito effettuata.";
break;
case "9":
$nome = urlencode($_POST["nomep"]);
$nome = htmlentities($nome);
$email = $_POST["emailp"];
if (!eregi("^[a-z0-9][_\.a-z0-9-]+@([a-z0-9][0-9a-z-]+\.)+([a-z]{2,4})", $email)) {
echo "email:".$email."<br />";
echo "<br />Indirizzo email NON valido.<br />Ricomincia la procedura e inserisci un indirizzo email corretto.<br />";
exit;
}
if(!empty($nome))
{
$query = "SELECT Email FROM Personaggio WHERE Nome = '$nome'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
if ($row)
{
if($email == $row[Email])
{
for($i=0; $i<=12; $i++)
$password .= chr(mt_rand(0, 24) + ord("A"));
$pass = sha1($password);
$query = "UPDATE Personaggio SET Pass = '$pass' WHERE Nome = '$nome'";
if(mysql_query($query))
{
$htmlbody = "<br /><center><img src='http://www.seven7ins.it/img/logoemail.jpg'></center><br />";
$htmlbody .= "Questa email ti viene inviata perchè è stato richiesto al sito una nuova password per il tuo personaggio.<br />";
$htmlbody .= "<center><b>Il nome del tuo personaggio è:</b><br /><h2>".$nome."</h2></center><br />";
$htmlbody .= "<center><b>La nuova password provvisoria per accedere è:</b><br /><h2>".$password."</h2></center><br />";
$htmlbody .= "Ti raccomandiamo di cambiarla una volta entrato, dalla tua scheda pg. Lo staff di 7Sins è a tua disposizione per ogni dubbio, problema o chiarimento. Contattaci all`email: <a href='mailto:[email protected]'>[email protected]</a><br /><hr><center><a href='http://www.seven7ins.it'>www.seven7ins.it</a>";
$StrBody = "Questa email ti viene inviata perchè è stato richiesto al sito una nuova password per il tuo personaggio.
";
$StrBody .= "
Il nome del tuo personaggio è: ".$nome."
";
$StrBody .= "
La nuova password provvisoria per accedere è: ".$password."
";
$StrBody .= "
(ti raccomandiamo di cambiarla una volta entrato, dalla tua scheda pg).
";
$StrBody .= "
Lo staff di seven7ins è a tua disposizione per ogni dubbio, problema o chiarimento. Contattaci all`email: [email protected]
";
$oggetto = "seven7ins GdR - Recupero Password";
$mail_from="[email protected]"; #MODIFICARE CON LA VOSTRA EMAIL DI STAFF !!!!!
$mail_subject=$oggetto;
$mail_text=$StrBody;
$mail_to=$email;
if( mail( $mail_to, $mail_subject, $mail_text, "From: {$mail_from}
" ) ) {
echo "Email inviata con successo alla email: ".$email."<br /><br />Se non la ricevete entro una o due ore, contattare lo staff: <a href='mailto:[email protected]'>[email protected]</a><br />"; #ANCHE QUI MODIFICARE CON VS EMAIL!!!
} else {
echo "Si è verificato un errore nell'invio della mail. Contattare lo staff: <a href='mailto:[email protected]'>[email protected]</a><br /> <br />"; #ANCHE QUI MODIFICARE CON VS EMAIL!!!
}
echo "<p align='justify'>Se i dati che hai inserito sono corretti, è stata inviata una email all'indirizzo <u>".htmlspecialchars($Email)."</u> contenente i dati di accesso del tuo personaggio. Si consiglia sempre di cambiare la password con una più facilmente memorizzabile all'interno dell'avatar del Personaggio.<br>Evitate di usare password troppo semplici da indovinare, come il nome stesso del personaggio o il proprio nome di battesimo o una combinazione numerica.";
}else
echo "Errore durante il recupero della password. Ripetere la procedura e verificare di aver inserito correttamente i dati richiesti.";
exit();
}else
echo "Il nome inserito non corrisponde alla email relativa.";
}else
echo "Il personaggio dal nome inserito non esiste.";
}
break;
}
?>
</body>
</html>
01/09/2011 19:56:06 e modificato da leoblacksoul il 01/09/2011 19:57:16
EDIT: Riguardo il problema con la condizione pvtlussuria:
Allora, prima cosa: con la prima query no stai affatto controllando che il personaggio abbia IDCasata=3000. Quella query sta cercando tutti gli utenti che hanno IDCasata uguale a 3000, dato che non hai fatto un filtro sul nome utente (o sull ID utente se il tuo db ce l'ha).
Poi la tua soluzione con l'elseif ovviamente non funziona perchè essendo un else quella parte viene eseguita solo ed esclusivamente se la condizione dell'if è falsa.
Il codice sarà un cosa del genere
elseif ($Condizione == 'pvtlussuria') {
$stanzapv = $_SESSION['Stanza'];
$oggacc = substr($stanzapv,2,2);
$MySql1 = "SELECT * FROM Personaggio WHERE (IDCasata = '3000' OR Master=1) AND Nome='".$_SESSION['Login']."'";
$Result1 = mysql_query($MySql1);
if (mysql_num_rows($Result1)>0) { #verifica se l'utente login ha l'oggetto di casata
mysql_free_result($Result1);
} else { #non lo ha quindi fuori
#echo $MySql1."<br />";
echo "<center><font class='sottoTitolo'>No Lussuria? No Party!</font></center>";
echo "</div>";
echo "-_-_-";
echo "<center><font class='Titolo'>".$luogopicc."</font><br /><font size=1>".$stato."</font>";
echo "-_-_-";
echo "<img src="img/luoghi/".$immaginepicc."" style="margin: 0pt 0px 0px 0pt; border:5px ridge #495883;" onmouseover="Tip('<p align=justify>".$descrpicc."</p>')">";
echo "-_-_-";
echo "0";
exit();
}
}
02/09/2011 09:19:10
rosanera ha scritto: Ciao,
per cortesia cambia il titolo del post con uno che faccia capire di che argomento stai trattando (form iscrizione, formattazione bottoni etc.. ) come da Regolamento.
Titoli " aiuto" o similari posson vedere il cancellamento del post, grazie. Ti consiglio di rileggere il Regolamento dle nostro portale.
Claudia
Scusami tantissimo, ho provveduto subito ^^
02/09/2011 11:35:46
già che siamo sul controllo dell'email...le espressioni regolari si possono usare tranquillamente per validate un email, ma forse può tornati più utile sapere che PHP ha già una funzione che valida gli indirizzi email (oltre che url e altre cose) che si chiama filter_var(). Ti risparmia i problemi che potrebbero venire fuori con un espressione regolare che non copre tutti i tipi di indirizzi email. ;)
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
World of Tanks ↗
Fallen Gods ↗
The Coven ↗
Exclusive Villa GdR ↗
AlterEgo ↗
Foundation Galactic Frontier ↗
Tibia ↗