vdepizzol 0 Denunciar post Postado Setembro 5, 2004 Olá, No site que eu tô fazendo [www.ibiracu.com/trazzi], quando você edita alguma mensagem na administração e vai criar uma mensagem (quando se está logado), a variável $_SESSION['nome'] fica com o mesmo valor de $nome_editar que era do arquivo editar.php quando a mensagem foi editada (e as duas variáveis não têm nada a ver!!!)... Já procurei mas não achei nada que resolvesse o problema. Aqui está o código: EDITAR.PHP PHP [/tr][tr] <form name="form1" method="post" action="editar2.php" onSubmit="return ValidaFormulario();"> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Seu nome:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"><? echo "$nome_editar";?> <input name="nome" type="hidden" id="nome" value="<? echo "$nome_editar";?>"> <input name="id" type="hidden" id="id" value="<? echo "$id";?>"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Seu e-mail</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"><? echo "$email_editar";?> <input name="email" type="hidden" id="email" value="<? echo "$email_editar";?>"> <input name="user" type="hidden" id="user" value="<? echo "$user";?>"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Assunto:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"> <input name="assunto" type="text" id="assunto" value="<? echo "$assunto_editar";?>" size="30" maxlength="100"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Mensagem:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"> <textarea name="mensagem" cols="40" rows="10" id="mensagem"><? echo "$mensagem_editar";?></textarea> <? if ($user == "sim") { echo '<input name="user" type="hidden" id="user" value="sim">'; } ?> </font></td> </tr> <tr valign="top"> <td colspan="2"> </td> </tr> <tr valign="top"> <td colspan="2"><div align="right"> <p align="center"> <input name="imageField" type="image" src="/trazzi/imagens/btn-enviar.gif" width="72" height="20" border="0" onSubmit="return ValidaFormulario();"> </p> <p align="right"> <font size="2" face="Arial, Helvetica, sans-serif"><a href="java script:history.back(1)">Cancelar</a></font> </p> </div></td> </tr> </form> [/tr] EDITAR2.PHP (página que envia os dados do editar.php) PHP [/tr][tr]<? // Inclui a função de conectar o bando de dados include("../conecta.php"); // pega as informações do formulário $nome_editar = $_POST[nome]; $email_editar = $_POST[email]; $assunto_editar = $_POST[assunto]; $mensagem_editar = $_POST[mensagem]; $id_editar = $_POST[id]; $user = $_POST[user]; if($user == "sim") { $tabela = "usuario"; } else { $tabela = "nome"; } global $connection; $query = "UPDATE trazzi_msgs SET $tabela = '$nome_editar', email = '$email_editar', assunto = '$assunto_editar', mensagem = '$mensagem_editar' WHERE id = '$id_editar'"; $result = mysql_query($query) or die("Sua mensagem não pôde ser editada. Contate o administrador do site para relatar um erro.<br>$query. " .mysql_error()); $msg = "Mensagem editada com sucesso!<br><a href='../mensagem.php?id=$id'>Clique aqui para vê-la</a>."; ?> [/tr] ESCREVER.PHP PHP [/tr][tr] <form name="form1" method="post" action="escrever2.php" onSubmit="return ValidaFormulario();"> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Seu nome:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"><? echo $_SESSION['nome']; ?> <input name="nome" type="hidden" id="nome" value="<? echo $_SESSION['nome']; ?>"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Seu e-mail</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"><? echo $_SESSION['email']; ?> <input name="email" type="hidden" id="email" value="<? echo $_SESSION['email']; ?>"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Assunto:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"> <input name="assunto" type="text" id="assunto" size="30" maxlength="100"> </font></td> </tr> <tr valign="top"> <td width="75"><font size="2" face="Arial, Helvetica, sans-serif">Mensagem:</font></td> <td><font size="2" face="Arial, Helvetica, sans-serif"> <textarea name="mensagem" cols="40" rows="10" id="mensagem"></textarea> </font></td> </tr> <tr valign="top"> <td colspan="2"> </td> </tr> <tr valign="top"> <td colspan="2"><div align="right"> <p align="center"> <input name="imageField" type="image" src="/trazzi/imagens/btn-enviar.gif" width="72" height="20" border="0" onSubmit="return ValidaFormulario();"> </p> <p align="right"> <font size="2" face="Arial, Helvetica, sans-serif"><a href="java script:limpaform()">Limpar formulário</a></font> </p> </div></td> </tr> </form> [/tr] ESCREVER2.PHP (página que envia os dados do escrever.php) PHP [/tr][tr]<? // Inclui a função de conectar o bando de dados include("../conecta.php"); // pega as informações do formulário $nome = $_POST[nome]; $email = $_POST[email]; $assunto = $_POST[assunto]; $mensagem = $_POST[mensagem]; global $connection; $query = "SELECT id FROM trazzi_msgs ORDER BY id DESC Limit 0,1"; $result = mysql_query($query) or die("Error: " . mysql_error()); while ($row = mysql_fetch_assoc($result)) { $id = $row['id']+1; } $query = "INSERT INTO trazzi_msgs(id, usuario, assunto, mensagem, pdate, email) VALUES('$id', '$nome', '$assunto', '$mensagem', NOW(), '$email')"; $result = mysql_query($query) or die("Sua mensagem não pôde ser enviada. Contate o administrador do site para relatar um erro.<br>$query. " .mysql_error()); $msg = "Mensagem enviada com sucesso!<br><a href='mensagem.php?id=$id'>Clique aqui para vê-la</a>."; ?> [/tr] Compartilhar este post Link para o post Compartilhar em outros sites
klawdyo 0 Denunciar post Postado Setembro 6, 2004 na primeira página, na linha 6 tem assim PHP [/tr][tr]<input name="nome" type="hidden" id="nome" value="<? echo "$nome_editar";?>"> [/tr] A bronca está acontecendo porque o nome da input tem o mesmo nome da Session, modifique o problema está resolvido. Valeu Compartilhar este post Link para o post Compartilhar em outros sites
vdepizzol 0 Denunciar post Postado Setembro 6, 2004 Vou testar... acho que esse é o erro mesmo... Depois eu respondo... :) Compartilhar este post Link para o post Compartilhar em outros sites
vdepizzol 0 Denunciar post Postado Setembro 6, 2004 Deu certo... mas eu não mudei o nome das inputs, mas o nome das variáveis $_SERVER...Antes:$_SERVER['nome'] = "nome";$_SERVER['email'] = "email";Depois:$_SERVER['nome_logado'] = "nome";$_SERVER['email_logado'] = "email"; :) Compartilhar este post Link para o post Compartilhar em outros sites