Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Problemas com confessionario


dener

Pergunta

Bom dia a todos...

Bom eu instalei o confessionario em meu site, mas quando posto as confissões não acontece nada, simplesmente não grava nada.

http://www.meganesia.com.br/confessionario...fessionario.php e vejam o q pode estar acontecendo.

Segue o script:

<html><head><title>Confessionário</title>
<link href="estilo.css" rel="stylesheet" type="text/css"></head>

<body>
<?
if ($acao=="gravar"){
require_once("dbconfig.php");

/* verifica se os dados obrigatórios foram informados */
if (trim($HTTP_POST_VARS["titulo"]) == "") {
    echo "<br><br><center>Problemas ao efetuar a confissão: <b>TÍTULO</b> é um campo obrigatório!</center>";
    exit();
} elseif (trim($HTTP_POST_VARS["nome"]) == "") {
    echo "<br><br><center>Problemas ao efetuar a confissão: <b>NOME</b> é um campo obrigatório!</center>";
    exit();
} elseif (trim($HTTP_POST_VARS["confissao"]) == "") {
    echo "<br><br><center>Problemas ao efetuar a confissão: <b>CONFISSÃO</b> é um campo obrigatório!</center>";
    exit();
} else {
    $sqli = " INSERT INTO
                confessionario
              (
                titulo,
                nome,
                confissao
              )
              VALUES
              (
                '" . addslashes($HTTP_POST_VARS["titulo"]) . "',
                '" . addslashes($HTTP_POST_VARS["nome"]) . "',
                '" . addslashes($HTTP_POST_VARS["confissao"]) . "'
              )
            ";

    /* executa sql */
    if (!@mysql_query($sqli)) {
        echo "<br><br><center>Problemas ao efetuar cadastro: " . mysql_error() . ".</center>";
        exit();
    } else {
        echo "<br><br><center>Confissão efetuada com sucesso!</center>
        <script>window.location='confessionario.php';</script>";
        exit();
    }
} }?>

    <form method="post" action="" enctype="multipart/form-data">
        <table width="475" border="0" align="center" cellpadding="0" cellspacing="3">
            <tr>
                <td align="center" colspan="2"><h1>Confession&aacute;rio</h1>
                  <p>Agora voc&ecirc; vai poder
                      confessar suas travessuras para a nossa galera!</p>
                  <p>Ficou com o namorado da melhor amiga? Matou aula pra ir
                    beber? Inventou uma mentira e faltou ao trabalho? CONFESSE!!!! </p>
                  <p>OBS: Use sempre nomes fict&iacute;cios
                    e evite palavras de baixo cal&atilde;o.</p>
              </td>
            </tr>
            <tr>
                <td align="right" width="166">T&iacute;tulo:</td>
                <td width="300" align="left"><input name="titulo" type="Text" id="titulo" value="" size="30" maxlength="70">
            </tr>
            <tr>
                <td align="right" width="166">Nome fict&iacute;cio:</td>
              <td width="300" align="left"><input name="nome" type="Text" id="nome" value="" size="30" maxlength="70">          
          </tr>
            <tr>
                <td align="right" width="166">
                Confiss&atilde;o:</td>
                <td align="left"><textarea name="confissao" cols="30" rows="4" id="confissao"></textarea>          
          </tr>
            </tr>
            <tr>
                <td align="center" colspan="2">
                    <input type="hidden" name="acao" value="gravar">
                    <input type="Submit" name="salvar" value="Que a galera perdoe meus pecados!">
                </td>
            </tr>
      </table>
    </form>

    <p>Leia abaixo as confiss&otilde;es da galera:</p>
    <p>      <?
include "dbconfig.php";
$sql = "select codigo, titulo from confessionario";
$query = @mysql_query($sql);
  if (!$query) {
die ("Problemas ao executar o sql !!!"); }
  else {
    while ($coluna = @mysql_fetch_array($query)) {
    $codigo = $coluna["codigo"];
    $titulo = $coluna["titulo"];

echo "<a href=confessionario_ver.php?id=$codigo>$titulo</a><br>";
}
mysql_close($conn);
}
?>
        </p>
</body></html>

fico no aguardo

Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0

Obrigado pela resposta, mas eu não sabia q este script era estão velho assim... rsrsrsrsrs

Olha este problema foi resolvido... tah gravando no banco de dados, aparece os titulos das confissoes, mas quando clico no titulo a unica coisa q aparece é uma pagina em branco, não aaprece a postagem...

fico no aguardo!!!

Link para o comentário
Compartilhar em outros sites

  • 0

<?

include "dbconfig.php";

$sql = "select codigo, titulo, nome, confissao, comentarios from confessionario";

$query = @mysql_query($sql);

if (!$query){

die ("Problemas ao executar o sql !!!");

} else {

while ($coluna = @mysql_fetch_array($query)){

$codigo = $coluna["codigo"];

$titulo = $coluna["titulo"];

$nome = $coluna["nome"];

$confissao = $coluna["confissao"];

$comentarios = $coluna["comentarios"];

switch ($id) {

case "$codigo":

echo "<link href=estilo.css rel=stylesheet type=text/css>

<p><b>$titulo</b></p>

<p>$confissao<br>

Por: <b>$nome</b>.</p><br>

<p><a href=java script:window.open('comentar.php?id=$codigo','','height=200,width=320,left=200,top=50');history.go(9)>Clique aqui para comentar essa confissão.</a><br><br>

<b>Comentários:</b><br>

$comentarios

<p><a href=java script:window.history.go(-1)>Voltar</a>";

break;

}

}

}

// e para finalizar, fechamos a conexão com servidor MySQL

mysql_close($conn);

?>

Link para o comentário
Compartilhar em outros sites

  • 0

funcionou Legal... olha você desculpa a minha ignorancia, mas num entendo nada de PHP... to atrasadaço nas linguagens de programação...

O porblema agora é quando vou comentar as mensagens postadas...não acontece nada...

Eu já modifiquei no arquivo comentar.php o mesmo q você pediu pra modificar na sua mensagem anterior...

segue o script

<html><head><title>Comentar Confissão</title>

<link href="estilo.css" rel="stylesheet" type="text/css"></head>

<body>

<?

if ($acao == "Comentar") {

include "dbconfig.php";

if (trim($HTTP_POST_VARS["comentario"]) == "") {

echo "<br><br><center>Problemas ao efetuar o comentário: <b>COMENTÁRIOS</b> é um campo obrigatório!<br><a href=java script:window.history.go(-1)>Voltar</a></center>";

exit();

} elseif (trim($HTTP_POST_VARS["seu_nome"]) == "") {

echo "<br><br><center>Problemas ao efetuar o comentário: <b>SEU NOME</b> é um campo obrigatório!<br><a href=java script:window.history.go(-1)>Voltar</a></center>";

exit();

} else {

$sql = "select codigo, comentarios from confessionario";

$query = @mysql_query($sql);

if (!$query){

die ("Problemas ao executar o sql !!!");

} else {

while ($coluna = @mysql_fetch_array($query)){

$codigo = $coluna["codigo"];

$antigos = $coluna["comentarios"];

switch ($_GET['id']) {

case "$codigo":

$comentariosok = "&raquo; $comentario<br><i>Por: $seu_nome</i><br>$antigos ";

$sqli = " UPDATE confessionario set comentarios = '$comentariosok' where codigo = '$id'

";

}}}

/* executa sql */

if (!@mysql_query($sqli)) {

echo "<br><br><center>Problemas ao efetuar comentário: " . mysql_error() . ".</center>";

exit();

} else {

echo "<br><br><center>Comentário efetuado com sucesso!<br>

Para ver seu comentário atualize a página da confissão.<br><br>

<a href=java script:window.close()>Fechar Janela</a></center>";

exit();

}

}}

?>

<form method="post" action="">

<table width="45%" border="0" align="center">

<tr>

<td width="26%">Seu Nome:</td>

<td width="74%"><input name="seu_nome" type="text" id="seu_nome" size="25"></td>

</tr>

<tr>

<td>Coment&aacute;rio:</td>

<td><textarea name="comentario" cols="23" rows="4" id="comentario"></textarea></td>

</tr>

<tr>

<td colspan="2"><div align="center">

<input type="hidden" name="id" value="<? echo "$id"; ?>">

<input type="hidden" name="acao" value="Comentar">

<input type="submit" name="Submit" value="Comentar">

<input type="reset" name="Submit2" value="Cancelar" onClick="window.close();">

</div></td>

</tr>

</table>

</form>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

$HTTP_POST_VARS["comentario"]

$HTTP_POST_VARS["seu_nome"]

troca por

$_POST["comentario"]

$_POST["seu_nome"]

PS: talvez uma forma mais fávcil de você modificar esse sistema seria dando um replace no projeto inteiro:

ctrl+f>>>$HTTP_POST_VARS por $_POST (dw,phpedit)

ctrl+r>>>$HTTP_POST_VARS por $_POST (eclipse)

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado pela resposta, mas as alterações sugeridas já foram feitas e nada de ter algum resultado como postei no meu ultimo post, apos a inserção do comentario aparece exatamente isto:

»

Por:

veja q não aparece o comentario e nem quem postou.

Segue o script como estah no momento:

<html><head><title>Comentar Confissão</title>

<link href="estilo.css" rel="stylesheet" type="text/css"></head>

<body>

<?

if ($_POST['acao'] == "Comentar") {

include "dbconfig.php";

if (trim($_POST["comentario"]) == "") {

echo "<br><br><center>Problemas ao efetuar o comentário: <b>COMENTÁRIOS</b> é um campo obrigatório!<br><a href=java script:window.history.go(-1)>Voltar</a></center>";

exit();

} elseif (trim($_POST["seu_nome"]) == "") {

echo "<br><br><center>Problemas ao efetuar o comentário: <b>SEU NOME</b> é um campo obrigatório!<br><a href=java script:window.history.go(-1)>Voltar</a></center>";

exit();

} else {

$sql = "select codigo, comentarios from confessionario";

$query = @mysql_query($sql);

if (!$query){

die ("Problemas ao executar o sql !!!");

} else {

while ($coluna = @mysql_fetch_array($query)){

$codigo = $coluna["codigo"];

$antigos = $coluna["comentarios"];

switch ($_GET['id']) {

case "$codigo":

$comentariosok = "&raquo; $comentario<br><i>Por: $seu_nome</i><br>$antigos ";

$sqli = " UPDATE confessionario set comentarios = '$comentariosok' where codigo = '".$_GET['id']."'

";

}}}

/* executa sql */

if (!@mysql_query($sqli)) {

echo "<br><br><center>Problemas ao efetuar comentário: " . mysql_error() . ".</center>";

exit();

} else {

echo "<br><br><center>Comentário efetuado com sucesso!<br>

Para ver seu comentário atualize a página da confissão.<br><br>

<a href=java script:window.close()>Fechar Janela</a></center>";

exit();

}

}}

?>

<form method="post" action="">

<table width="45%" border="0" align="center">

<tr>

<td width="26%">Seu Nome:</td>

<td width="74%"><input name="seu_nome" type="text" id="seu_nome" size="25"></td>

</tr>

<tr>

<td>Coment&aacute;rio:</td>

<td><textarea name="comentario" cols="23" rows="4" id="comentario"></textarea></td>

</tr>

<tr>

<td colspan="2"><div align="center">

<input type="hidden" name="id" value="<? echo "$id"; ?>">

<input type="hidden" name="acao" value="Comentar">

<input type="submit" name="Submit" value="Comentar">

<input type="reset" name="Submit2" value="Cancelar" onClick="window.close();">

</div></td>

</tr>

</table>

</form>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

  • 0

Será que ninguém mais pode me ajudar???????????

Fazendo alguns testes observei que está acontecendo o seguinte:

Quando é inserido os dados pelo formulario, os dados não são gravados no Banco de Dados. No banco de dados aparece apenas isto: &raquo; <br><i>Por: </i><br>

ou seja, a cada registro vai aparecendo mais um desses: &raquo; <br><i>Por: </i><br>.

Entrei no banco de dados e inseri uma informação entre estes caracteres e aih o que inseri direto no banco de dados apareceu no comentário.

Fico no aguardo....

Editado por dener
Link para o comentário
Compartilhar em outros sites

  • 0

Leia as regras ups não são permitidos... já que o teu script é antigo e tem várias falhas, vamos fazer uma coisa totalmente errada, pega os scripts originais e no topo coloca:

foreach($_POST as $ind=>$val){

$$ind = $val;

}

foreach($_GET as $ind=>$val){

$$ind = $val;

}

Pronto isso vai simular o efeito de register_globals, como eu disse, é totalmente errado fazer isso, mas no teu caso o teu script já é uma bagunça mesmo...

Link para o comentário
Compartilhar em outros sites

  • 0

Antes de mais nada gostaria de lhe agradecer pelas suas respostas e ajuda, este seu último tópico resolveu meu problema.

Gostaria de salientar também, que não estava usando de "ups" para subir meu tópico até porque sei que é proibido... apenas estava postando uma informação que acabara de descobrir e achei que poderia ser importante para solução deste tópico e só a título de sugestão vocês poderiam analizar os scripts antes de posta-lo para downloads para evitar estes tipos de problemas, ou seja, poderiam colocar para download apenas os scripts que realmente funcionem.

Mas de qualquer maneira fico muito grato mesmo pela solução deste problema. :rolleyes: e espero que não se importe com a minha sugestão.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...