Chat Oggetti
Chat Oggetti postato il 28/09/2007 20:00:46 nel forum programmazione, open source e hosting
Ciao a tutti!!! Sto lavorando a un nuovo GDR e volevo aggiungere una chat in cui gli utenti potessono inserire oggetti direttamente nella chat, cioè attraveso una select list con i propi oggetti acquistati. Ho provato a farla ma non ci riesco e vi sarei grato se mi aiutaste a realizzarla.
input.php
<?session_start();
include ("inc/parametri.inc.php");
include ("inc/controllo.php");
include ("inc/open2.php");
$Login = $_SESSION['Login'];
$Sesso_S = $_SESSION['Sesso_S'];
$DescGilda = $_SESSION['DescGilda_S'];
$ImgGilda = $_SESSION['ImgGilda_S'];
$ImgRazza_S = $_SESSION['ImgRazza_S'];
$DescRazza_S = $_SESSION['DescRazza_S'];
$Messaggio=$_POST['Messaggio'];
$Stanza=$_SESSION['Stanza'];
$op=$_REQUEST['op'];
//$Msg=$_REQUEST['Msg'];
$Tipo=$_REQUEST['Tipo'];
//$StanzaCambia="";
$nome=$_POST['nome'];
$caccia=$_POST['caccia'];
$elenco=$_POST['elenco'];
$invita=$_POST['invita'];
$Tag=$_SESSION['Tag'];
if($_POST['Tag']!=""){$Tag=$_POST['Tag'];}
$_SESSION['Tag']=$Tag;
include ("inc/controlloesilio.php");
?>
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style>
BODY {font-size:10px; text-decoration: none; font-family:verdana; color:gold; font-weight:normal;}
TD {font-size:10px; text-decoration: none; font-family:verdana; color:gold; font-weight:normal;}
TABLE {font-size:10px; text-decoration: none; font-family:verdana; color:gold; font-weight:normal;}
</style>
</head>
<body topmargin=0 leftmargin=0 bgcolor=#000000 background="img/input.jpg">
<?
$CarDefault = '';
$Msg = stripslashes($Msg);
$Msg = substr($Msg, 0, min(strlen($Msg), 500));
$Msg = addslashes($Msg);
If ((strtoupper($op) == "CANCELLACHAT") && ($_SESSION['Master'] == 1)) {
$Msg = "Stanza $Stanza cancellata";
$MySql = "DELETE FROM Chat WHERE Stanza = '".$Stanza."' AND DATE_ADD(Ora, INTERVAL 10 MINUTE) >= NOW()";
mysql_query($MySql);
if ($ImgGilda == "") {
$ImgGilda = "nessuno.gif";
$DescGilda = "cittadino";
}
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= "VALUES ('".addslashes($Stanza)."', 'System Op', '".addslashes($Login)."', NOW(), '".$Msg."', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
#############################
# GESTIONE STANZE RISERVATE #
#############################
$MySql = "SELECT * FROM Mappa WHERE ID = '".addslashes($Stanza)."'";
$Result = mysql_query($MySql);
$rs = mysql_fetch_array($Result);
$Condizione = $rs["Condizione"]."";
$Invitati = $rs["Invitati"]."";
mysql_free_result($Result);
if ($Condizione != "") {
$Condizione = str_replace("G", "IDGilda", $Condizione);
$pos = strpos($Condizione, "$Numero");
if ($pos === false) {
$MySql = "SELECT * FROM Presenti WHERE Nome = '".addslashes($Login)."' AND ".$Condizione;
} else {
$Condizione = str_replace("$Numero", $Stanza, $Condizione);
$Condizione = str_replace("$Date", "'".strftime("%Y-%m-%d %H:%M:%S")."'", $Condizione);
$MySql = "SELECT * FROM Presenti INNER JOIN Albergo ON Nome = Proprietario AND ".$Condizione." WHERE Nome = '".addslashes($Login)."'";
}
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
mysql_free_result($Result);
#Permesso Gestione Stanza
if ($invita != "") {
$pos = strpos(strtoupper($Invitati), "!".strtoupper($nome)."!,");
if ($pos === false) {
$MySql = "SELECT Nome FROM Personaggio WHERE Nome = '$nome'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Nome2=$rs["Nome"];
mysql_free_result($Result);
$MySql = "UPDATE Mappa SET Invitati = CONCAT(Invitati, '!".addslashes($Nome2)."!,') WHERE ID = '".addslashes($Stanza)."'";
mysql_query($MySql);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".addslashes($Nome2)." è stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'Y')";
mysql_query($MySql);
} else {
mysql_free_result($Result);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".htmlspecialchars($nome)." non esiste', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
} else {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".$nome." è già stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
}
# ********** NON CACCIA!!! *******
if ($caccia != "") {
$pos = strpos(strtoupper($Invitati), "!".strtoupper($nome)."!,");
if ($pos === false) {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".$nome." non era stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
} else {
$MySql = "SELECT Nome FROM Personaggio WHERE Nome = '$nome'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Nome2 = $rs["Nome"];
mysql_free_result($Result);
$MySql = "UPDATE Mappa SET Invitati = REPLACE(Invitati, '!$Nome2!,', '') WHERE ID = '".addslashes($Stanza)."'";
mysql_query($MySql);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(),";
$MySql .= " '".addslashes("L'invito di ".htmlspecialchars($Nome2)." è stato revocato.")."', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'Y')";
mysql_query($MySql);
} else {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(),";
$MySql .= " '".$nome." non esiste.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
}
}
if($elenco != "") {
$Msg = $Invitati;
If ($Msg == "") {$Msg = "nessun invitato,";};
$Msg = substr($Msg, 0, strlen($Msg)-1);
$Msg = str_replace(",", ", ", $Msg);
$Msg = str_replace("!", "", $Msg);
$Msg = addslashes("elenco degli invitati: ".htmlspecialchars($Msg));
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '$Msg', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
} else { #controllo permesso tra gli invitati: non è un gestore della stanza
mysql_free_result($Result);
$pos = strpos(strtoupper($Invitati), "!".strtoupper($Login)."!,");
if ($pos === false) {
echo "stanza riservata";
exit();
}
}
}
$Messaggio = stripslashes(trim($Messaggio));
$Msg = substr($Messaggio, 0, min(strlen($Messaggio), 500));
$Msg = addslashes($Messaggio);
$CharAdd = "";
$Tipo = "";
if ($Msg != "") {
if ((substr($Msg, 0, 1) == "§") && ($_SESSION['Master'] == 1) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
$Tipo = "M";
$CarDefault = '§';
}
if ((substr($Msg, 0, 1) == "§") && ($_SESSION['Master'] == 2) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
$Tipo = "C";
$CarDefault = '§';
}
if ((substr($Msg, 0, 1) == "*") && ($_SESSION['Master'] == 1) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Tipo = "H";
}
if ((substr($Msg, 0, 1) == "-") && ($_SESSION['Master'] == 1) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Tipo = "W";
}
if ((substr($Msg, 0, 1) == "$") && ($Tipo == "")) {
if (strtoupper(substr($Msg, 1, 4)) == "DADI") {
$maxnum = min(floor(abs(0 + substr(trim($Msg), 5))), 1000);
if ($maxnum == 0) {$maxnum = 6;};
mt_srand((double)microtime()*1000000);
$num = mt_rand(1, $maxnum);
$Tipo = "Y";
$Msg = $Login." tira $num/$maxnum";
$Msg = htmlspecialchars($Msg);
#$Msg = "[Y]<ORA:" & tempo() & "><MITT:" & Session("Login") & "><MSG:" & server.htmlencode(Session("Login")) & " tira " & num & "/" & maxnum & ">"
}
}
if (((substr($Msg, 0, 1) == "+") :: (substr($Msg, 0, 1) == "#")) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
if($Tag!=""){$Msg=" [".htmlspecialchars($Tag)."] ".$Msg;}
$Tipo = "A";
}
if ((substr($Msg, 0, 1) == "@") && ($Tipo == "")) {
$Pos = strpos(substr($Msg, 1), "@");
if (($Pos === false) :: ($Pos > 20)) {
$Msg = htmlspecialchars($Msg);
$Tipo = "P";
} else {
$MsgTemp = substr($Msg, $Pos+2);
$Dest = substr($Msg, 1, $Pos);
$MySql = "SELECT * FROM Presenti WHERE Nome = '".addslashes($Dest)."'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Msg = $MsgTemp;
$Msg = htmlspecialchars($Msg);
$Dest = trim($rs["Nome"]);
$Tipo = "S";
} else {
$Tipo = "S";
$Msg = $Dest." non è presente";
$Msg = htmlspecialchars($Msg);
$Dest = $Login;
}
mysql_free_result($Result);
}
}
if (($Msg != "") && ($Tipo == "")) {
$Msg = htmlspecialchars($Msg);
if($Tag!=""){$Msg=" [".htmlspecialchars($Tag)."] ".$Msg;}
$Tipo = "P";
}
#$Msg = substr($Msg, 0, min(strlen($Msg), 1000));
if ($Tipo != "") {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= "VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Dest)."', NOW(), '".$Msg."', '$Sesso_S', '$ImgGilda', '".addslashes($DescGilda)."', '$ImgRazza_S', '".addslashes($DescRazza_S)."', '$Tipo')";
mysql_query($MySql);
# mysql_query($MySqlBackup); #BACKUP DELLA CHAT
# mysql_query($MySqlBackup2); #CANCELLA I MESSAGGI PIU VECCHI DI 20 MINUTI
}
#echo "<script>parent.chatrefresh.document.location.href ='refresh.php'</script>";
};
$Msg = "";
?>
<center>
<table cellpadding=0 height="60" cellspacing=0 border=0>
<tr>
<td background="img/input1.jpg" width=55></td>
<td width=38><a href="main.php?Dir=<?=$Stanza?>" target="_top"><img border=0 src="img/reload.gif"> </a></td>
<td valign=top align=left background="img/input2.jpg">
<form name=invio action="input.php" method=POST>
<br><input type=Text Name=Tag size=10 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="10" value="<?= $Tag ?>">
<input type=Text Name=Messaggio class=txtbox size=40 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="1000" value="<?= $CarDefault ?>">
<br><font color=white>Luogo Messaggio/Azione <a href="#" onClick="Javascript:window.open('helpinput.php','_new','height=400,width=600,toolbar=no,location=no,status=yes,menubar=no,scrollbars=yes,resizable=yes')">
<img src="img/info.gif" border=0><font color=white> Aiuto</a>
</td>
<td valign=top align=left width=40 background="img/input2.jpg">
<br><INPUT TYPE=Submit VALUE=Invia style="font-weight:bold;font-family:Verdana;font-size:8pt"></form>
<SCRIPT LANGUAGE="Javascript">document.invio.Messaggio.focus()</SCRIPT>
<? if ($_SESSION['Master'] == 1) { ?>
</td>
<td valign=top align=center width=40 background="img/input2.jpg">
<form name=comandimaster2 action="input.php" target=chatinput method=POST>
<input type=hidden name=op value=CancellaChat><br><INPUT TYPE=submit VALUE="Pulisci" style="font-weight:normal;font-family:Verdana;font-size:8pt"></form>
<? } else {echo "<td width=137></td>";} ?>
</font>
</td>
<?if ($_SESSION['Master']==1){?> <td valign=top background="img/input2.jpg">
<form action="mappa.php" method=POST target="mappa" Title="Cambio Stato del Luogo">
<br><input type= text Name="StatoStanza" size=15 maxlength=40><br>
<input type=hidden name=op value="CambioStato">
<font color=white>Stato stanza</a>
</form>
</td><?}?>
<td background="img/input3.jpg" width=55></td>
</tr></table>
</center>
</body>
</html>
refresh.php
<? session_start();
include ('inc/parametri.inc.php');
include ('inc/controllo.php');
include ('inc/open2.php');
$Stanza=$_SESSION['Stanza'];
$op=$_REQUIRE['op'];
$Login=$_SESSION['Login'];
$LastTime=$_SESSION['LastTime'];
function Tempo($tim) {
return(strftime("%H:%M", strtotime($tim)));
}
If (strtoupper($op) == 'ESCI') {header('Location: logout.php', false);};
include('inc/controlloesilio.php');
?>
<HTML><HEAD><link rel="stylesheet" href="mainchat.css" TYPE="text/css"><meta HTTP-EQUIV="Refresh" CONTENT="8"></HEAD>
<body style="background-image: url(img/refresh.jpg);" >
<?
$MySql = "SELECT * FROM Mappa WHERE ID = '".pars($Stanza)."'";
$Result = mysql_query($MySql);
$rs = mysql_fetch_array($Result);
$Condizione = $rs['Condizione'].'';
$Invitati = $rs['Invitati'].'';
$rs->close;
if ($Condizione != '') {
$Condizione = str_replace('G', 'IDGilda', $Condizione);
$pos = strpos($Condizione, "$Numero");
if ($pos === false) {
$MySql = "SELECT * FROM Presenti WHERE Nome = '".pars($Login)."' AND ".$Condizione;
} else {
$Condizione = str_replace("$Numero", $Stanza, $Condizione);
$Condizione = str_replace("$Date", "'".strftime("%Y-%m-%d %H:%M:%S")."'", $Condizione);
$MySql = "SELECT * FROM Presenti INNER JOIN Albergo ON Nome = Proprietario AND ".$Condizione." WHERE Nome = '".pars($Login)."'";
}
$Result = mysql_query($MySql);
if (!($rs = mysql_fetch_array($Result))) {
$pos = strpos(strtoupper($Invitati), "!".strtoupper($Login)."!,");
if ($pos === false) {
exit();
}
}
$rs->close;
}
$MySql = "SELECT * FROM Chat WHERE Stanza = '".pars($Stanza)."' AND ID > ".$LastTime." AND DATE_ADD(Ora, INTERVAL 10 MINUTE) >= NOW()";
$MySql .= " ORDER BY ID DESC LIMIT 0, 20";
$Result = mysql_query($MySql);
echo "<!--$MySql-->";
$Counter = 0;
$newchat = '';
if ($LastTime == 0) {
$Testata .= "<HEAD><link rel="stylesheet" href="mainchat.css" TYPE="text/css"></HEAD><BODY style='background-image: url(img/refresh.jpg); '>";
}
while ($rs = mysql_fetch_array($Result)) {
if ($rs['ID'] > $LastTime) {
$_SESSION['LastTime'] = $rs['ID'];
$LastTime = $_SESSION['LastTime'];
};
#{
switch ($rs['Tipo']) {
case 'M': #Master scritte nere
$n = '<center><TABLE WIDTH="80%" border=1 bordercolor="darkred"><TR><TD CLASS=Mas align=left><FONT CLASS=Master> '.$rs['Testo'].'</FONT></TD></TR></TABLE></center>';
break;
case 'C': #Master corporazione scritte blu
$n = '<center><TABLE WIDTH="80%" border=1 bordercolor="darkred"><TR><TD CLASS=Mas align=left><FONT CLASS=MasterC> '.$rs['Testo'].'</FONT></TD></TR></TABLE></center>';
break;
case 'H': #Master HTML puro
$n = "<img src='".$rs['Testo']."' border=0><br>'";
break;
case 'W': #Master HTML puro
$n = "<EMBED src='".$rs['Testo']."' autostart= true loop= false volume= 100 height= 0 width= 0><br>'";
break;
case 'A': #Azione Pubblica
# if ($rs['Mittente'] == $Login) {
$n = "<FONT CLASS=Azione><FONT CLASS=Micro>".Tempo($rs['Ora'])."</FONT> <FONT CLASS=Nome> ".$rs['Mittente']."</FONT> ".$rs['Testo']."</FONT><BR>";
#$n = "<B><FONT FACE=Verdana SIZE=1><FONT COLOR='#800000'>".$rs['Mittente']."</FONT> <FONT COLOR='#FF1111'>".$rs['Testo']."</FONT></FONT></B><BR>";
# } else {
# $n = "<B><FONT FACE=Verdana SIZE=1 COLOR='#FF1111'>".$rs['Mittente']." ".$rs['Testo']."</FONT></B><BR>";
# }
break;
case 'X': #Sistema
$n = '<FONT CLASS=Azione>'.$rs['Testo'].'</FONT><BR>';
break;
case 'Y': #Azioni speciali: dadi ecc.
$n = '<FONT CLASS=Y>'.$rs['Testo'].'</FONT><BR>';
break;
case 'S': #Sussurro
If (strtoupper($Login) == strtoupper($rs['Destinatario'])) {
$n = "<TABLE WIDTH='100%'><TR CLASS=SussDest><TD align=left><b>".$rs['Mittente'].' ti sussurra: </b><i>'.$rs['Testo'].'</i></TD></TR></TABLE>';
};
If (strtoupper($Login) == strtoupper($rs['Mittente'])) {
$n = "<TABLE WIDTH='100%'><TR CLASS=SussMitt><TD align=left><b>sussurri a ".$rs['Destinatario'].": </b><i>".$rs['Testo']."</i></TD></TR></TABLE>";
};
break;
case 'P': #Messaggio Pubblico
$n = '<FONT CLASS=Testo><FONT CLASS=Micro>'.Tempo($rs['Ora']).'</FONT> <IMG SRC='img/stemmi/'.$rs['ImgGilda']."' border=0 height=15 width=15 align=bottom title="".pars($rs['DescGilda'])." - ".pars($rs['DescRazza']).'"> <IMG SRC='img/testamini'.strtolower($rs['Sesso']).'.gif' width=8 height=8 border=0 Alt="Messaggio privato" onclick="Javascript:parent.chatinput.document.invio.Messaggio.value='@'.$rs['Mittente'].'@';parent.chatinput.document.invio.Messaggio.focus()"> <B>'.htmlspecialchars($rs['Mittente']).'</B><font size=1 color=white> ('.pars($rs['DescRazza']).')</font>: '.$rs['Testo'].'</FONT><BR>';
break;
};
$newchat = $n.$newchat;
$n = '';
#};
}
$newchat = $Testata.$newchat;
$newchat = str_replace("\", "\\", $newchat);
$newchat = str_replace("'", "\'", $newchat);
?>
<script>
parent.chattesto.document.write('<?= $newchat ?>');
var h = 0;
try {h = parent.chattesto.document.body.offsetHeight + 1000;} catch(e) {h = 0};
parent.chattesto.scroll (0, h);
</script>
</body></html>
Pagine → 1
29/09/2007 02:29:52
Potevi incollare a questo punto tutto GDRCD, magari in asci ^^.
29/09/2007 20:25:09
Ho trovato un pacchetto che si referiva a ciò che cercavo, "GDRCD Chat Plus". Ma è solo che se inserisco un testo e invio nn mi si visualizza. NN trovo il problema.
input.php
<?
session_start();
include ("inc/parametri.inc.php");
include ("inc/controllo.php");
include ("inc/open2.php");
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
background-color: #f5ebd2;
}
-->
</style>
</head>
<SCRIPT TYPE="text/javascript">
function popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
href=mylink;
else
href=mylink.href;
window.open(href, windowname, 'height=400,width=280,scrollbars=yes');
return false;
}
</SCRIPT>
<body topmargin=0 leftmargin=0 bgcolor=#000000>
<?
#echo "$Stanza:$StanzaCambia<br>";
$CarDefault = '';
include ("inc/controlloesilio.php");
$Msg = stripslashes($Msg);
$Msg = substr($Msg, 0, min(strlen($Msg), 1000));
$Msg = addslashes($Msg);
If (($StanzaCambia != "") and ($StanzaCambia != $Stanza)) {
cambiastanza($StanzaCambia, $Login);
};
If ((strtoupper($op) == "CANCELLACHAT") && ($Master == 1)) {
$Msg = "Stanza $Stanza cancellata";
#$MySql = "INSERT INTO BakChat SELECT * FROM Chat WHERE Stanza = '".$Stanza."' AND DATE_ADD(Ora, INTERVAL 10 MINUTE) >= NOW()";
#mysql_query($MySql);
$MySql = "DELETE FROM Chat WHERE Stanza = '".$Stanza."' AND DATE_ADD(Ora, INTERVAL 180 MINUTE) >= NOW()";
mysql_query($MySql);
$DescGilda = $DescGilda_S;
$ImgGilda = $ImgGilda_S;
if ($ImgGilda == "") {
$ImgGilda = "nessuno.gif";
$DescGilda = "cittadino";
}
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= "VALUES ('".addslashes($Stanza)."', 'System Op', '".addslashes($Login)."', NOW(), '".$Msg."', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
#############################
# GESTIONE STANZE RISERVATE #
#############################
$MySql = "SELECT * FROM Mappa WHERE ID = '".addslashes($Stanza)."'";
$Result = mysql_query($MySql);
$rs = mysql_fetch_array($Result);
$Condizione = $rs["Condizione"]."";
$Invitati = $rs["Invitati"]."";
mysql_free_result($Result);
if ($Condizione != "") {
$Condizione = str_replace("G", "IDGilda", $Condizione);
$pos = strpos($Condizione, "$Numero");
if ($pos === false) {
$MySql = "SELECT * FROM Presenti WHERE Nome = '".addslashes($Login)."' AND ".$Condizione;
} else {
$Condizione = str_replace("$Numero", $Stanza, $Condizione);
$Condizione = str_replace("$Date", "'".strftime("%Y-%m-%d %H:%M:%S")."'", $Condizione);
$MySql = "SELECT * FROM Presenti INNER JOIN Albergo ON Nome = Proprietario AND ".$Condizione." WHERE Nome = '".addslashes($Login)."'";
}
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
mysql_free_result($Result);
#Permesso Gestione Stanza
if ($invita != "") {
$pos = strpos(strtoupper($Invitati), "!".strtoupper($nome)."!,");
if ($pos === false) {
$MySql = "SELECT Nome FROM Personaggio WHERE Nome = '$nome'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Nome2=$rs["Nome"];
mysql_free_result($Result);
$MySql = "UPDATE Mappa SET Invitati = CONCAT(Invitati, '!".addslashes($Nome2)."!,') WHERE ID = '".addslashes($Stanza)."'";
mysql_query($MySql);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".addslashes($Nome2)." è stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'Y')";
mysql_query($MySql);
$MySql = "INSERT Into Messaggi (Mittente, Destinatario, Testo, Spedito) VALUES ('DataBase di Londra', '$Nome2', 'sei stato invitato da ".addslashes($Login)." nella sua stanza attuale', NOW())";
mysql_query($MySql);
} else {
mysql_free_result($Result);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".htmlspecialchars($nome)." non esiste', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
$MySql = "INSERT Into Messaggi (Mittente, Destinatario, Testo, Spedito) VALUES ('$Login', '$Nome2', '$Testo', NOW())";
mysql_query($MySql);
}
} else {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".$nome." è già stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
$MySql = "INSERT Into Messaggi (Mittente, Destinatario, Testo, Spedito) VALUES ('$Login', '$Nome2', '$Testo', NOW())";
mysql_query($MySql);
}
}
# ********** NON CACCIA!!! *******
if ($caccia != "") {
$pos = strpos(strtoupper($Invitati), "!".strtoupper($nome)."!,");
if ($pos === false) {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '".$nome." non era stato invitato.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
} else {
$MySql = "SELECT Nome FROM Personaggio WHERE Nome = '$nome'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Nome2 = $rs["Nome"];
mysql_free_result($Result);
$MySql = "UPDATE Mappa SET Invitati = REPLACE(Invitati, '!$Nome2!,', '') WHERE ID = '".addslashes($Stanza)."'";
mysql_query($MySql);
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(),";
$MySql .= " '".addslashes("L'invito di ".htmlspecialchars($Nome2)." è stato revocato.")."', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'Y')";
mysql_query($MySql);
} else {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(),";
$MySql .= " '".$nome." non esiste.', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
}
}
if($elenco != "") {
$Msg = $Invitati;
If ($Msg == "") {$Msg = "nessun invitato,";};
$Msg = substr($Msg, 0, strlen($Msg)-1);
$Msg = str_replace(",", ", ", $Msg);
$Msg = str_replace("!", "", $Msg);
$Msg = addslashes("elenco degli invitati: ".htmlspecialchars($Msg));
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= " VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Login)."', NOW(), '$Msg', '$Sesso_S', '$ImgGilda', '$DescGilda', '$ImgRazza_S', '$DescRazza_S', 'S')";
mysql_query($MySql);
}
} else { #controllo permesso tra gli invitati: non è un gestore della stanza
mysql_free_result($Result);
$pos = strpos(strtoupper($Invitati), "!".strtoupper($Login)."!,");
if ($pos === false) {
echo "stanza riservata";
exit();
}
}
}
$Messaggio = stripslashes(trim($Messaggio));
$Msg = substr($Messaggio, 0, min(strlen($Messaggio), 1000));
$Msg = addslashes($Messaggio);
$CharAdd = "";
$Tipo = "";
if ($ogg == "1") {
$Locazione = $_POST['Lcz'];
$Lcz = $Locazione;
} elseif ($ogg == "2") {
$Locazione = $_POST['Lcz'];
$Lcz = $Locazione; } elseif ($ogg == "3") {
$Dest = $_POST['Lcz'];
$Lcz = $Locazione; } else {
$Locazione = stripslashes(trim($Locazione));
$Lcz = $Locazione;
$LczDefault = $Lcz;
}
if ($Msg != "") {
if ($ogg == "1") {
$Msg = htmlspecialchars($Msg);
$Tipo = "O";
}
if ($ogg == "2") {
$Msg = htmlspecialchars($Msg);
$Tipo = "T";
}
if ($ogg == "3") {
$Msg = htmlspecialchars($Msg);
$Tipo = "S";
}
if ((substr($Msg, 0, 1) == "§") && ($Master == 1) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
$Tipo = "M";
$CarDefault = '§';
}
if ((substr($Msg, 0, 1) == "§") && ($Master == 2) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
$Tipo = "C";
$CarDefault = '§';
}
if ((substr($Msg, 0, 1) == "*") && ($Master == 1) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Tipo = "H";
}
if ((substr($Msg, 0, 1) == "$") && ($Tipo == "")) {
if (strtoupper(substr($Msg, 1, 4)) == "DADI") {
$maxnum = min(floor(abs(0 + substr(trim($Msg), 5))), 1000);
if ($maxnum == 0) {$maxnum = 6;};
mt_srand((double)microtime()*1000000);
$num = mt_rand(1, $maxnum);
$Tipo = "Y";
$Msg = $Login." tira $num/$maxnum";
$Msg = htmlspecialchars($Msg);
#$Msg = "[Y]<ORA:" & tempo() & "><MITT:" & Session("Login") & "><MSG:" & server.htmlencode(Session("Login")) & " tira " & num & "/" & maxnum & ">"
}
}
if (((substr($Msg, 0, 1) == "+") :: (substr($Msg, 0, 1) == "#")) && ($Tipo == "")) {
$Msg = substr($Msg, 1);
$Msg = htmlspecialchars($Msg);
$Tipo = "A";
}
if ((substr($Msg, 0, 1) == "@") && ($Tipo == "")) {
$Pos = strpos(substr($Msg, 1), "@");
if (($Pos === false) :: ($Pos > 20)) {
$Msg = htmlspecialchars($Msg);
$Tipo = "P";
} else {
$MsgTemp = substr($Msg, $Pos+2);
$Dest = substr($Msg, 1, $Pos);
$MySql = "SELECT * FROM Presenti WHERE Nome = '".addslashes($Dest)."'";
$Result = mysql_query($MySql);
if ($rs = mysql_fetch_array($Result)) {
$Msg = $MsgTemp;
$Msg = htmlspecialchars($Msg);
$Dest = trim($rs["Nome"]);
$Tipo = "S";
} else {
$Tipo = "S";
$Msg = $Dest." non è presente";
$Msg = htmlspecialchars($Msg);
$Dest = $Login;
}
mysql_free_result($Result);
}
}
if (($Msg != "") && ($Tipo == "")) {
$Msg = htmlspecialchars($Msg);
$Tipo = "P";
}
#$Msg = substr($Msg, 0, min(strlen($Msg), 1000));
if ($Tipo != "") {
$MySql = "INSERT INTO Chat (Stanza, Mittente, Destinatario, Ora, Testo, Locazione, Sesso, ImgGilda, DescGilda, ImgRazza, DescRazza, Tipo)";
$MySql .= "VALUES ('".addslashes($Stanza)."', '".addslashes($Login)."', '".addslashes($Dest)."', NOW(), '".$Msg."', '".$Lcz."', '$Sesso_S', '$ImgGilda_S', '".addslashes($DescGilda_S)."', '$ImgRazza_S', '".addslashes($DescRazza_S)."', '$Tipo')";
mysql_query($MySql);
# mysql_query($MySqlBackup); #BACKUP DELLA CHAT
# mysql_query($MySqlBackup2); #CANCELLA I MESSAGGI PIU VECCHI DI 20 MINUTI
}
#echo "<script>parent.chatrefresh.document.location.href ='refresh.php'</script>";
};
$Msg = "";
?>
<? if ($mod == "o") { ?>
<form name=invio action="input.php?ogg=1" method=POST>
<table cellpadding=0 cellspacing=1 border=0 align=center>
<tr><td align=left>Oggetti</td><td align=left>Testo</td><td></td><td></td></tr>
<tr>
<td valign=middle cellspacing=2>
<select name="Lcz">
<?
$MySql = "SELECT * FROM ClgPersonaggioOggetto LEFT JOIN Oggetto ON Oggetto.IDOggetto = ClgPersonaggioOggetto.IDOggetto WHERE ClgPersonaggioOggetto.Nome = '$Login'";
#echo $MySql;
$Result = mysql_query($MySql);
while ($rs = mysql_fetch_array($Result)) {
?>
<option><?=$rs['Descrizione']?></option>
<? } ?>
</select>
</td>
<td valign=middle><input type=Text Name=Messaggio class=txtbox size=60 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="1000" value="<?= $CarDefault ?>"></td>
<td valign=middle><input type="submit" value="Invia" title="Invia"></td>
</form>
<form name=invio action="input.php?mod=" method=POST>
<td valign=top><input type="submit" value="Indietro" title="Invia"></td>
</form>
<? } elseif ($mod == "") { ?>
<form name=invio action="input.php" method=POST>
<table cellpadding=0 cellspacing=1 border=0 align=center>
<tr><td align=left>Locazione</td><td align=left>Testo</td><td></td><td></td></tr>
<tr>
<td valign=middle cellspacing=2><input type=Text Name=Locazione class=txtbox size=15 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="2000" value="<?= $LczDefault ?>"> </td>
<td valign=middle><input type=Text Name=Messaggio class=txtbox size=60 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="2000" value="<?= $CarDefault ?>"></td>
<td valign=top><input type="submit" value="Invia" title="Invia"></td>
</form>
<form name=invio action="input.php?mod=o" method=POST>
<td valign=top><input type="submit" value="Oggetti" title="Usa Oggetti"></td>
</form>
<form name=invio action="input.php?mod=sus" method=POST>
<td valign=top><input type="submit" value="S" title="Sussurri"></td>
</form>
<? } elseif ($mod == "sus") { ?>
<form name=invio action="input.php?ogg=3" method=POST>
<table cellpadding=0 cellspacing=1 border=0 align=center>
<tr><td align=left>Presenti</td><td align=left>Testo</td><td></td><td></td></tr>
<tr>
<td valign=top cellspacing=2>
<select name="Lcz">
<?
$MySql="Select * From Presenti where OraUscita = '2037-12-31 00:00:00' and StanzaApparente = $Stanza AND Is_Invisibile = 0 ORDER BY Nome";
$Result = mysql_query($MySql);
while($rs = mysql_fetch_array($Result)) {
?>
<option><?=$rs['Nome']?></option>
<? } ?>
</select>
</td>
<td valign=top><input type=Text Name=Messaggio class=txtbox size=60 style="font-weight:normal;font-family:Verdana;font-size:8pt;color=333333" maxlength="1000" value="<?= $CarDefault ?>"></td>
<td valign=top><input type="submit" value="Invia" title="Invia"></td>
</form>
<form name=invio action="input.php?mod=" method=POST>
<td valign=top><input type="submit" value="Indietro" title="Indietro"></td>
</form>
<? } ?>
<SCRIPT LANGUAGE="Javascript">document.invio.Messaggio.focus()</SCRIPT>
<? if ($Master == 1) { ?>
<form name=comandimaster2 action="input.php" target=chatinput method=POST>
<td valign=top><input type=hidden name=op value=CancellaChat><input type="submit" value="Pulisci" title="Cancella Chat"></td></form>
<? } ?>
<td valign=top Title="Comandi e suggerimenti"><a href="#" onClick="Javascript:window.open('helpinput.php','_new','height=550,width=750,toolbar=no,location=no,status=yes,menubar=no,scrollbars=yes,resizable=yes')"><input type="submit" value="Help" title="Help"></a></td>
</tr>
</table>
</body>
</html>
30/09/2007 10:35:37
PROBLEMA RISOLTO. Cmq grazie per avermi aiutato.
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 ↗
Raja Dunia ↗
Wuthering Waves ↗