Jump to content
Fórum Script Brasil
  • 0

Remover tag de abertura e fechamento do PHP


kethellen

Question

Pessoal preciso de uma ajudinha, estou testando uma função do php strip_tags para tentar remover a tag de abertura do php.

Porém não estou conseguindo, estou fazendo da seguinte forma $comentario = strip_tags($_POST['comentario'],'<?php'); os outros dados cadastram normalmente mais o campo comentario fica vazio.

Quando testo com outra tag funciona direitinho, como por exemplo $comentario = strip_tags($_POST['comentario],'<p>');

Mais o que realmente quero é remover a tag de abertura do php. <?php e a de fechamento se possivel ?>

obrigado a quem puder ajudar.

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

str_replace só substitui a string que está ali no argumento, no caso, o <?php, de qualquer maneira para que você quer isto? Se você está preocupada com alguém enviar um script pelo formulário, vale lembrar que ele vai chegar ao sistema como uma simples string, para ser executado precisaria ser usado o eval.

Link to comment
Share on other sites

  • 0
oi fertel brigada pela dica...mais testei aqui não deu certo, tipo ele não está substituindo somente a tag de abertura <?php e sim todo o conteudo tambem que esta dentro da tag, dai o campo comentario do formulario fica como em branco.

Olha Kethellen, funcionar, funciona. Botei um teste simples abaixo para você testar:

Usei o texto no comentário:

<?php

// Aqui está um comentário

?>

<b>Texto em negrito</b><br />

Texto sem negrito

Código da página para teste (replace.php):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Teste</title>
</head>

<body>
<form action="replace.php" method="post" enctype="application/x-www-form-urlencoded">
<textarea name="comentario" id="comentario" cols="5" rows="3"></textarea>

<input name="" type="Submit" />
</form>

<?php
if(isset($_POST['comentario'])){
    $remover = array("<?php", "?>", "<b>", "</b>");
    $semtags = str_replace($remover, "", $_POST['comentario']);
    
    echo $semtags;
}
?>
</body>
</html>

Resultado como esperado:

// Aqui está um comentário Texto em negrito

Texto sem negrito

Agora, é como o amigo acima disse, precisamos entender o contexto da sua necessidade para ver se esse exemplo se aplica ou não às suas necessidades. Eu entendi que você está tratando um formulário de comentários correto? Então o replace cai como uma luva pra remover aquilo que não lhe interessa na string.

Edited by fertel
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...