[PHP] posting text-input met slashes

Pagina: 1
Acties:
  • 74 views sinds 30-01-2008

  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Wanneer ik de onderstaande string eenmaal zo in mijn php-functie heb, kan ik er mee verder,
maar hij komt helaas niet goed aan, want als ik dezelfde string 'post' in een text-input "html" van een form, gaat er "iets" mis.

'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><body>[img]"http://www.viahetnet.com/target/images/grid.gif"[/img]</body></html>'

Ik heb al geprobeerd alle slashes te 'escapen' bij de input, bijv. http:\/\/www etc. , en dan stripslashes
( $_POST['html']) , maar dat werkt voorlopig niet.

Nu maar eens kijken of het aanhalingstekens zijn...
Of moet ik misshien bepaalde tekens 'replacen' in de input en daarna terug 'replacen' in php
Wie weet het ? :?

A friend is one who knows us, but loves us anyway.


Verwijderd

?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><body>[img]"http://www.viahetnet.com/target/images/grid.gif"[/img]</body></html><?

Is de makkelijktste oplossing voor je

[ Voor 28% gewijzigd door Verwijderd op 28-03-2006 14:12 ]


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
de ?> ... <?

geeft : Parse error: parse error, unexpected T_STRING

n.b. het formulier zit ook in een php bestand

[ Voor 86% gewijzigd door Oysterhoys op 28-03-2006 14:23 ]

A friend is one who knows us, but loves us anyway.


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 09:59

Gonadan

Admin Beeld & Geluid, Harde Waren
Ergens een semicolon ( ; ) vergeten? :)

[ Voor 3% gewijzigd door Gonadan op 28-03-2006 14:26 ]

Look for the signal in your life, not the noise.

Canon R6 | RF 24-70 f/2.8 L | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Verwijderd

Waarom wil je die hele zooi posten via een form trouwens? :?

  • Voutloos
  • Registratie: Januari 2002
  • Niet online
Als je dit iets duidelijker kan vertellen, schiet dit topic een stuk meer op. ;)

{signature}


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Gonadan schreef op dinsdag 28 maart 2006 @ 14:26:
Ergens een semicolon ( ; ) vergeten? :)
goed gezien, inderdaad niet correct, maar daar loopt ie niet op vast

A friend is one who knows us, but loves us anyway.


  • Valor
  • Registratie: Mei 2005
  • Laatst online: 06-02 08:25

Valor

yummie spam

Waarschijnlijk gaat je post over de zeik omdat er quotes in je string staan. Dit is relatief simpel te vervangen.

Bijvoorbeeld met http://nl3.php.net/htmlspecialchars

  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Voutloos schreef op dinsdag 28 maart 2006 @ 14:30:
[...]
Als je dit iets duidelijker kan vertellen, schiet dit topic een stuk meer op. ;)
ik wil de string mailen, als body,
als ik de exacte string mail, toont die de html in de mail die verzonden wordt,
de string moet echter eerst gepost worden, voordat ie in de mailfunctie komt,
als ik de exacte string eerst post en dat via $_POST in de functie gebruik,
wordt de mail wel verstuurd, maar wordt de html niet vertoont

A friend is one who knows us, but loves us anyway.


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Verwijderd schreef op dinsdag 28 maart 2006 @ 14:28:
Waarom wil je die hele zooi posten via een form trouwens? :?
omdat de string dynamisch is, gebruiker maakt zelf het ontwerp en de html wordt gegenereert en gemailt naar de partij die het ontwerp moet bouwen

A friend is one who knows us, but loves us anyway.


  • Valor
  • Registratie: Mei 2005
  • Laatst online: 06-02 08:25

Valor

yummie spam

Als de html zelf zichtbaar is in de email dan heb je waarschijnlijk een header van je mail niet goed staan!

  • x-force
  • Registratie: Maart 2001
  • Laatst online: 05-01-2024
Oysterhoys schreef op dinsdag 28 maart 2006 @ 14:39:
[...]


omdat de string dynamisch is, gebruiker maakt zelf het ontwerp en de html wordt gegenereert en gemailt naar de partij die het ontwerp moet bouwen
Kun je misschien wat code posten? Dan kunnen we je wat beter helpen.

VangenopBetaalwater.nl Het platform om ervaringen over betaalwater in Frankrijk te delen met andere karpervissers zodat iedereen kan vangen op betaalwater!


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Valor schreef op dinsdag 28 maart 2006 @ 14:43:
Als de html zelf zichtbaar is in de email dan heb je waarschijnlijk een header van je mail niet goed staan!
dat is het niet de string zoals in het begin vermeld mailt uitstekend,
hoe krijg ik die string echter exact van de input op het het formulier naar de mail functie in php

A friend is one who knows us, but loves us anyway.


Verwijderd

Je zegt dat er "iets" mis gaat, wat gaat er precies mis? Wat gebeurt er als je het POST en de var opvraagt?

  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
deze functie werkt dus gewoon, de body moet echter via de $html bepaald worden,
die weer als $_POST[''html] binnen komt


function send_mail()
{
global $settings, $html ;
$to = $settings['recipients'] ;
$subject = $settings['subject'] ;
$body = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><body>[img]"http://www.viahetnet.com/target/images/grid.gif"[/img]</body></html>';

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From:'. $settings['from'] . "\r\n";
if(mail($to,$subject,$body,$headers)) {
$GLOBALS['mail_status'] = "send";
} else {
$GLOBALS['mail_status'] = "failed";
}

}

A friend is one who knows us, but loves us anyway.


Verwijderd

Doe nou eens echo $_POST['html']...

Gebruik ff code-tags in het vervolg :)

  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Verwijderd schreef op dinsdag 28 maart 2006 @ 14:52:
Doe nou eens echo $_POST['html']...

Gebruik ff code-tags in het vervolg :)
hoe ook alweer :/

A friend is one who knows us, but loves us anyway.


Verwijderd

8)7 In je PHP-code die regel plaatsen :X

Ow je bedoelt code-tags... Ja, daar hebben ze een FAQ voor he :)

[ php ] code [ / ]

en dan zonder spaties.

[ Voor 26% gewijzigd door Verwijderd op 28-03-2006 14:54 ]


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
die echo begreep ik, had ik gedaan, maar dan zie je een img tag, waar iets mis mee is, als je bijv een foute src hebt, alleen een klein vierkantje.

ik bedoelde hoe 'code' je ook alweer je posting hier

A friend is one who knows us, but loves us anyway.


Verwijderd

Oysterhoys schreef op dinsdag 28 maart 2006 @ 14:56:
die echo begreep ik, had ik gedaan, maar dan zie je een img tag, waar iets mis mee is, als je bijv een foute src hebt, alleen een klein vierkantje.

ik bedoelde hoe 'code' je ook alweer je posting hier
Ja logisch dat je niet die tekst ziet, je browser probeert er iets van te bakken. Bekijk je HTML-source even dan :X

en zie mijn edit & de FAQ.

[ Voor 5% gewijzigd door Verwijderd op 28-03-2006 14:57 ]


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Verwijderd schreef op dinsdag 28 maart 2006 @ 14:57:
[...]

Ja logisch dat je niet die tekst ziet, je browser probeert er iets van te bakken. Bekijk je HTML-source even dan :X

en zie mijn edit & de FAQ.
dat is een goed idee, daar zat ik al over te peinzen, hoe ik de string kon zien, zoals die aankwam.

A friend is one who knows us, but loves us anyway.


Verwijderd

Oysterhoys schreef op dinsdag 28 maart 2006 @ 14:59:
[...]


dat is een goed idee, daar zat ik al over te peinzen, hoe ik de string kon zien, zoals die aankwam.
... en dat had je misschien beter kunnen bedenken voordat je hier een topic opende :) Dan hadden we je wat beter kunnen helpen waarschijnlijk :).

Laat de source maar even zien dan...

  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Verwijderd schreef op dinsdag 28 maart 2006 @ 15:01:
[...]

... en dat had je misschien beter kunnen bedenken voordat je hier een topic opende :) Dan hadden we je wat beter kunnen helpen waarschijnlijk :).
als ik perfect, was hoefde ik nooit te posten, maar afijn , dit komt er uit :

[html]

<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"><html><body>[img]\"http://www.viahetnet.com/target/images/grid.gif\"[/img]</body></html>
[/html]

m.a.w. door het posten worden de aanhalingstekens ge-escaped,
nu iets bedenken hoe ik die un-escape, of dus van te voren aanpas.
maar dit geeft moed,

thanx :*)

[ Voor 11% gewijzigd door Oysterhoys op 28-03-2006 15:13 ]

A friend is one who knows us, but loves us anyway.


Verwijderd

En [html] werkt niet...

Kijk hier even

En de oplossing: http://nl3.php.net/manual/nl/function.stripslashes.php

Google is je vriend he: php escape, tweede hit... :O

[ Voor 15% gewijzigd door Verwijderd op 28-03-2006 15:17 ]


  • Oysterhoys
  • Registratie: Juni 2003
  • Laatst online: 15-12-2024
Boland : _/-\o_

A friend is one who knows us, but loves us anyway.


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 22-01 23:51

NMe

Quia Ego Sic Dico.

Dan liever hier: Hoe post je code? / Hoe gebruik je de code tag? ;)

Verder was hier inderdaad zelf wel uit te komen met een beetje Googlen. Aan de topicstart te zien kende je (topicstarter) de term "escapen". Dan is het verder natuurlijk een peuleschil om het probleem nog op te lossen. :) Volgende keer dus iets meer moeite doen. ;)

Het klinkt trouwens alsof magic quotes aan staan. Als je daar de mogelijkheid toe hebt, zet die dan liever uit. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1

Dit topic is gesloten.