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

Enviando $variavel Em Campo Hidden


carlosmandra

Pergunta

Colegas,

estou com um dúvida que não estou conseguindo resolver. Já pesquisei em todo canto, mas infelizmente não consegui, aí vim aqui pedir ajuda. Seguinte:

Estou montando um sistema de newsletter que funciona assim: uma página lista as notícias cadastradas no sistema, e, através de checkboxes, o usuário marca quais notícias farão parte da newsletter, clicando no botão Gerar Boletim. Esse botão passa as variáveis para uma página que faz um loop e monta a newsletter para o usuário ver como ficou (o famoso Visualizar). Defini essa montagem da newsletter dentro de uma variável $mensagemHTML, e assim dou um echo pra imprimí-la na tela.

require_once('conexao.php'); 
$numero = $HTTP_POST_VARS['qtde']; // é a quantidade de notícias marcadas na página anterior

mysql_select_db($database_meusite, $conexao);

	foreach($_POST["noticia"] as $idnot)
    	{	
         $query_rsnot = "SELECT * FROM noticias WHERE id_not = '$idnot'";
  	$rsnot = mysql_query($query_rsnot, $conexao) or die(mysql_error());
  	$row_rsnot = mysql_fetch_assoc($rsnot);
  	$totalRows_rsnot = mysql_num_rows($rsnot);
  	
  	if ($row_rsnot['img_not']!=""){
    $tabelafoto = "<table width=\"107\" border=\"0\" align=\"left\" cellpadding=\"0\" cellspacing=\"0\">
            <tr>
              <td width=\"107\"><font size=\"1\">".$row_rsnot['credito_not']."</font></td>
            </tr>
            <tr>
              <td><div align=\"center\"><img src=\"../images/fotos/materias/".$row_rsnot['img_not']."\"></div></td>
            </tr>
            <tr>
              <td><div align=\"center\"><em><font size=\"1\">".$row_rsnot['legenda_not']."</font></em></div></td>
            </tr>
          </table>";
    } else {
    $tabelafoto = "";
    }
  	

  	$mensagemHTML = " 
    <table width=\"95%\"  border=\"0\" align=\"center\" cellpadding=\"1\" cellspacing=\"1\">
      <tr>
        <td class=\"titulosNetDetalhe\">".$row_rsnot['titulo_not']."</td>
      </tr>
      <tr>
        <td>".date("d/m/Y", strtotime($row_rsnot['data_not']))."<br>
  ".$tabelafoto."
          <p>".$row_rsnot['texto_not']."
      </p></td>
      </tr>
    </table>
  	
  	<p>
  	<hr width=\"99%\" size=\"1\">
  	<p>";
  	
    	echo $mensagemHTML;
  
  }
Pronto. Até aqui tudo bem, tudo funcionando. Logo depois, monto o html completo pra poder mandar pro pessoal cadastrado:
$moldeHTML = "

<html>
<head>
<title>Boletim</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
<link href=\"file:http://www/meusite.com.br/css/estilos.css\" rel=\"stylesheet\" type=\"text/css\">
</head>

<body>
<table width=\"510\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
  <tr>
    <td bgcolor=\"#FFFFFF\"><img src=\"http://www/meusite.com.br/newsletter/top.jpg\" width=\"510\" height=\"114\"></td>
  </tr>
  <tr>
    <td height=\"29\" bgcolor=\"#FFFFFF\"><strong>Boletim - Edi&ccedil;&atilde;o 01 - 08/10/2005</strong></td>
  </tr>
  <tr>
    <td height=\"90\" bgcolor=\"#FFFFFF\">".$mensagemHTML."</td>
  </tr>
</table>
</body>
</html>

";
Agora tenho dois problemas: primeiro, só aparece a primeira notícia (acho que é porque ele está fora do loop do foreach). Segundo, quando seto um campo hidden com o valor $moldeHTML pra passá-lo pra outra página que envia o email, ele aparece no final da página desformatando tudo:
<form name="form1" method="post" action="not_envia_boletim.php">
        <input name="dadosparaenvio" type="hidden" id="dadosparaenvio" value="<?php echo $moldeHTML; ?>">
        <input type="submit" name="Submit" value="Enviar boletim para cadastrados">
     
    </form>

Alguém pode me ajudar a resolver isso? Talvez essa não seja a forma mais correta ou lógica de fazer essa operação. Se alguém tiver alguma idéia que possa ajudar, ficarei grato.

Obrigado.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

cara, acredito que quando você faz o echo dentro do input hidden, o codigo html esta se "perdendo" com as apas duplas que estao dentro da variavel php...

tente mudar para aspas simples no codigo html q você esta passando pela variavel php, talvez ajude...

se alguém tiver uma solução mais facil...

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...