WYSIWYG en php+mysql werkt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Martijn

martijn

18/02/2006 22:46:00
Quote Anchor link
Ik gebruik FCKeditor en als ik daar een tekst mee maak en ik wil de in mijn db zetten met volgend script:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
            if ( isset( $_POST ) )
   $postArray = &$_POST ;            // 4.1.0 or later, use $_POST
else
   $postArray = &$HTTP_POST_VARS ;    // prior to 4.1.0, use HTTP_POST_VARS

foreach ( $postArray as $sForm => $value )

            $pagename = $_POST['pagename'] ;
            $pagecontent = htmlspecialchars("$value") ;
        if ($pagename != NULL && $pagecontent != NULL) {
$query = "INSERT INTO pagina (pagename, pagecontent, fromuser)
VALUES ('$pagename', '$pagecontent', '$username')"
;
mysql_query($query) or die (__LINE__." ".mysql_error());

$query = mysql_query("SELECT MAX(pid) AS laatste_id FROM pagina");
$id = mysql_fetch_assoc($query);

    }

?>


Dan krijg ik:
69 You have an error in your SQL syntax near 's geld gekost om de ongein terug van je systeem te verwijderen? dan is deze site' at line 2

Raar maar daarstraks kon ik daar wel paginas mee toevoegen
Iemand nog ideeen?
 
PHP hulp

PHP hulp

16/11/2024 08:30:53
 
Burdy

Burdy

18/02/2006 22:52:00
Quote Anchor link
Het lijkt erop dat er wat tekst in je database terecht is gekomen met een ' erin.
Daar geeft je query een error op.
 
Klaasjan Boven

Klaasjan Boven

18/02/2006 22:53:00
Quote Anchor link
mischien vind hij die 's niet zo leuk
voordat je een bericht in de db stopt eerst met bijv str_replace aan de slag.

$pagecontent moet in de bd dan

$pagecontent= str_replace (" ' ", " ", "$pagecontent");
Zovervangt hij ' door een spatie
Gewijzigd op 18/02/2006 22:55:00 door Klaasjan Boven
 
Martijn

martijn

18/02/2006 22:56:00
Quote Anchor link
Maar hij krijg ik die ' er dan terug in?
 
Klaasjan Boven

Klaasjan Boven

18/02/2006 22:59:00
Quote Anchor link
ja dat is een goede volgens mij moet er ook een manier zijn om een ' te escapen met \
Moet je even zoeken
 
Burdy

Burdy

18/02/2006 23:00:00
Quote Anchor link
Voordat je iets in de database wegschrijft moet je die tekst eerst met de instructie addslashes bewerken.

Als je de tekst weer uit de database ophaalt kun je met de instructie stripslashes de tekst weer goed weergeven.

Zie:
addslashes

stripslashes
Gewijzigd op 18/02/2006 23:06:00 door Burdy
 
Klaasjan Boven

Klaasjan Boven

18/02/2006 23:06:00
Quote Anchor link
en je kunt htmlentities gebruiken


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$str
= "A 'quote' is <b>bold</b>";

// Outputs: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);

// Outputs: A &#039;quote&#039; is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str, ENT_QUOTES);
?>


php.net
 
Klaasjan Boven

Klaasjan Boven

18/02/2006 23:11:00
Quote Anchor link
oftopic
400 :)
oftopic
 
Martijn

martijn

19/02/2006 10:56:00
Quote Anchor link
Het is gelukt met addslashes en stripslashes
Bedankt
 

19/02/2006 10:58:00
Quote Anchor link
Klaasjan:
oftopic
400 :)
oftopic
401 :-)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.