Ik wil graag dat de ingetype berichten orgineel worden opgeslagen als ze de database in gaan.


$text2 = $_POST[text'];
mysql_query("INSERT INTO `vetstuur` (`datum`, `text`) VALUES (NOW(), '".$text2."')");


Nu als ik een tekst typ in veld "text" worden alle spaties etc. vergeten.
Hoe kan ik doen dat ze worden meegeteld?

Bedankt!
Op welk type staat je database veld?
<?php
$sql = "INSERT INTO vetstuur
(datum,
text
) VALUES
( NOW(),
'" . mysql_real_escape_string($_POST['text']) . "'
)";
$result = mysql_query($sql);
?>
Nu als ik een tekst typ in veld "text" worden alle spaties etc. vergeten.
Dat is wel heel erg stug. Sowieso: de bovenstaande code kan nooit de code zijn die jij gebruikt. Want daar zit een fout in die zeker een interpreter-error moet geven.

Daarnaast is de fout uiteraard niet aan MySQL o.i.d. te wijten. Hooguit aan het feit dat je de limitatie het type wat te laag hebt (bijv. VARCHAR(20) en je voegt iets toe wat een lengte heeft van 300.

Eerder vermoed ik dat je bedoeld: ik haal de tekst weer uit de database en print het op mijn webpagina. Dan zijn opeens alle enters en spaties weg, hoe komt dat? Dan verwijs ik je door naar nl2br en iets als preg_replace('#(?<= ) #', '&nbsp;', $sTekst)...
@Yearupie
Je wilt geen data bewerking naar html uitvoeren als je iets op gaat slaan in je database. Dat raad ik je ten sterkte af. Presentatie doe je pas na een selectie!

Reageren