Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

manolegal

Problema mostrar variável PHP

Recommended Posts

Bom dia

Estou com problemas para mostrar variáveis PHP em um modal.

Faço a pesquisa dos dados por ajax.

Somente o primeiro termo/palavra da variável está sendo mostrada no campo do modal.

No arquivo que traz os dados do BD, criei um botão para detalhar os dados no modal.

<td>
      <button type=button class=btn btn-xs btn-warning data-toggle=modal data-target=#exampleModal data-whatever=$id_mensagem data-whatevertitulo=$titulo data-whateverdetalhes=$mensagem>Visualizar</button>
</td>

Retornando:

<td>
      <button type=button class=btn btn-xs btn-warning data-toggle=modal data-target=#exampleModal data-whatever=23 data-whatevertitulo=Titulo de exemplo em vermelho data-whateverdetalhes=Testes de testes>Visualizar</button>
</td>

No arquivo que retorna os dados:

<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
  <div class="modal-dialog" role="document">
        <div class="modal-content">
          <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
                <h4 class="modal-title" id="exampleModalLabel">Testes</h4>
          </div>
          <div class="modal-body">
                <form method="POST" action="processa.php" enctype="multipart/form-data">
                  <div class="form-group">
                        <label for="recipient-titulo" class="control-label">Título:</label>
                        <input name="titulo" type="text" class="form-control" id="recipient-titulo">
                  </div>
                  <div class="form-group">
                        <label for="message-text" class="control-label">Detalhes:</label>
                        <textarea name="detalhes" class="form-control" id="detalhes"></textarea>
                  </div>
                <input name="id" type="hidden" class="form-control" id="id_mensagem" value="">
                <button type="submit" class="btn btn-primary">Gravar</button>
                <button type="button" class="btn btn-default" data-dismiss="modal">Cancelar</button>

                </form>
          </div>

        </div>
  </div>
</div>
<script type="text/javascript">
        $('#exampleModal').on('show.bs.modal', function (event) {
          var button = $(event.relatedTarget) // Button that triggered the modal
          var recipient = button.data('whatever') // Extract info from data-* attributes
          var recipienttitulo = button.data('whatevertitulo')
          var recipientdetalhes = button.data('whateverdetalhes')
          // If necessary, you could initiate an AJAX request here (and then do the updating in a callback).
          // Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead.
          var modal = $(this)
          modal.find('.modal-title').text('Tópico ' + recipient)
          modal.find('#id-curso').val(recipient)
          modal.find('#recipient-titulo').val(recipienttitulo)
          modal.find('#detalhes').val(recipientdetalhes)

        })
</script>

No título, por exemplo, ao invés de retornar

Titulo de exemplo em vermelho

Está retornando

Titulo

Onde pode estar o problema?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Se houver espaço, você tem que obrigatoriamente colocar entre aspas. Inclusive até suas classes não estão funcionando corretamente, porque você tem 3 palavras como classe mas não possui aspas, logo o navegador vai usar só a primeira palavra como classe e as outras como se fossem atributos do elemento, e o mesmo acontece com o seu título. Recomendo você sempre usar aspas nos valores dos atributos, assim evita esse tipo de problema.



<button type="button" class="btn btn-xs btn-warning" data-toggle="modal" data-target="#exampleModal" data-whatever="23" data-whatevertitulo="Titulo de exemplo em vermelho" data-whateverdetalhes="Testes de testes">Visualizar</button>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Beleza Anderson. Funcionou perfeitamente:

<button type='button' class='btn btn-xs btn-warning' data-toggle='modal' data-target='#exampleModal' data-whatever='$id_mensagem' data-whatevertitulo='$titulo' data-whateverdetalhes='$mensagem'>Visualizar</button>

Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.