← PHP

Ajuda em include + substituição caracteres.

Lida 2483 vezes

Offline

STronic 
Elite
Mensagens 546 Gostos 8
Feedback +5

Troféus totais: 30
Trófeus: (Ver todos)
Mobile User Search Apple User Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3

Pessoal, estou a fazer um script para uma newsletter e preciso de fazer um include de um ficheiro, mas alterar-lhe alguns caraceteres...

ou seja... o ficheiro é:

Código: [Seleccione]
<html>
<body bgcolor="#000000">
<img src="qualquercoisa.jpg" width="100" align="center" />
</body>
</html>

Preciso de converter para:

Código: [Seleccione]
<html>
<body bgcolor=\"#000000\">
<img src=\"qualquercoisa.jpg\" width=\"100\" align=\"center\" />
</body>
</html>

Digamos que preciso de fazer o include e substituir os " por \"

Alguém dá umas dicas?
Offline

=IceBurn= 
Membro
Mensagens 897 Gostos 3
Feedback +3

Troféus totais: 32
Trófeus: (Ver todos)
Windows User Level 6 Linux User Mobile User Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5

É possível sim, mas é muito estranho o que queres fazer...  :-k

Tem de ser mesmo a função include?

A minha sugestão para já vai para que faças essas mesmas alterações no ficheiro que incluis e não no ficheiro em que usas o include.

A minha segunda sugestão vai para o uso de file_get_contents() onde indicas o caminho para o ficheiro que queres se o mesmo apenas contiver HTML, caso contrário podes sempre usar um URL em vez do caminho para o ficheiro (atenção aos aspectos relacionados com a segurança).

E pronto, sendo que a informação/objectivo que indicas são um pouco vagos, para já é o que posso sugerir.

Pada escapar as aspas duplas, podes simplesmente usar addslashes(), não esquecendo que para colocar numa base de dados deverás usar sempre mysql_real_escape_string() e nunca addslashes()
Offline

STronic 
Elite
Mensagens 546 Gostos 8
Feedback +5

Troféus totais: 30
Trófeus: (Ver todos)
Mobile User Search Apple User Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3

A intenção é fazer sair uma página em HTML (só HTML) via mail()

o file_get_contents() servirá... mas não tenho ideia de como o fazer ;)

Código: [Seleccione]
$to = email@email.com;
$subject = 'Assunto';
$message = AQUI VAI O CONTEUDO DO HTML;
mail($to, $subject, $message);
Offline

STronic 
Elite
Mensagens 546 Gostos 8
Feedback +5

Troféus totais: 30
Trófeus: (Ver todos)
Mobile User Search Apple User Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3

Consegui com:

Código: [Seleccione]
$messageHTML = file_get_contents('index.html');
$message = addslashes($messageHTML);

mas estraga-me a codificação toda :s
Offline

STronic 
Elite
Mensagens 546 Gostos 8
Feedback +5

Troféus totais: 30
Trófeus: (Ver todos)
Mobile User Search Apple User Super Combination Combination Topic Starter Poll Voter Level 5 Level 4 Level 3

Resolvido!
Obrigado a quem ajudou...
Offline

=IceBurn= 
Membro
Mensagens 897 Gostos 3
Feedback +3

Troféus totais: 32
Trófeus: (Ver todos)
Windows User Level 6 Linux User Mobile User Super Combination Combination Topic Starter Poll Voter Poll Starter Level 5

Ainda bem que conseguiste. :)

No entanto lembra-te que deverás enviar as headers correctas quando enviares HTML por email...