Hallo. ik heb de onderstaande html code in mijn content. deze content wordt opgeslagen middels javascript in local storage en vervolgens met behulp van ajax weer opgeslagen in een apart bestand. Dat gaat allemaal goed met alle html code die ik tot nu toe heb. echter bij onderstaande html code gaat er iets fout. het systeem voegt bij de kleurcode iets toe.

onderstaande de code welke werkt

<div class="star-rating-paulw">
    <span class="star-paulw" data-value="1">&#9734;</span>
    <span class="star-paulw" data-value="2">&#9734;</span>
    <span class="star-paulw" data-value="3">&#9734;</span>
    <span class="star-paulw" data-value="4">&#9734;</span>
    <span class="star-paulw" data-value="5">&#9734;</span>
</div>


onderstaande de html code nadat deze is opgeslagen in een apart bestand (zie de toegevoegde code). op 1 of andere manier past het systeem het aan.


<div class="star-rating-paulw">
    <span class="star-paulw full-paulw" data-value="1">&acirc;&#152;&#134;</span>
    <span class="star-paulw half-paulw full-paulw" data-value="2">&acirc;&#152;&#134;</span>
    <span class="star-paulw half-paulw full-paulw" data-value="3">&acirc;&#152;&#134;</span>
    <span class="star-paulw half-paulw full-paulw" data-value="4">&acirc;&#152;&#134;</span>
    <span class="star-paulw" data-value="5">&acirc;&#152;&#134;</span>
</div>
Welk systeem? Hoe voeg je het toe?
onderstaande javascript met ajax waarbij (nadat ik op de save buton heb geklikt) de inhoud van local storage wordt opgehaald en vervolgens wordt opgeslagen in een variable. vervolgens wordt deze data doorgestuurd naar het bestand php "save-content.php)



<script type="text/javascript">
$(document).ready(function(argument) {
$('#save-rijzoek').click(function()
{
$code = localStorage.getItem('item');
$.ajax({
url: 'save-content/save-content.php',
type: 'post',
data: {code:$code},
datatype: 'html',
success: function(rsp){
location.reload();
});});
</script>



onderstaande save-content.php. ik vermoed dat het hier ergens fout gaat.



$codetest = trim( $_REQUEST['code'] );
$myFile = "temp.html"; // or .php   
$fh = fopen($myFile, 'w'); // or die("error");  
fwrite($fh, $codetest);  
fclose($fh);  	
$a = 'temp.html';
$b = file_get_contents('temp.html');
$c = preg_replace('/\s+/', ' ', $b);
file_put_contents($a, $c);
$b = file_get_contents('temp.html');
$c = preg_replace('/<!--/', '', $b);
file_put_contents($a, $c);
$b = file_get_contents('temp.html');
$c = preg_replace('/-->/', '', $b);
file_put_contents($a, $c);

Wat staat er in temp.html ?
zie hieronder. hier is i.p.v. de kleurcode een ander teken verschenen!


<div class="star-rating-paulw"> 
    <span class="star-paulw full-paulw" data-value="1">?</span> 
    <span class="star-paulw half-paulw" data-value="2">?</span> 
    <span class="star-paulw" data-value="3">?</span>
    <span class="star-paulw" data-value="4">?</span> 
    <span class="star-paulw" data-value="5">?</span> 
     
     </div> 
Dan gebeurt er nog meer ergens in je code?
Tijd om dat te isoleren, lijkt me.
andere html code gaat gewoon goed. het is alleen bij dit stukje html waar het fout gaat. wat bedoel je met isoleren?
De code tijdelijk compacter maken, om zo uit te zoeken waar de fout zit. Alles wat niet relevent is eruit halen, en met debug werk kijken waar het probleem zit.
hoi arien.

Ik heb het php bestand nog eens bekeken. onderstaande de code welke eerst wordt uitegvoerd in save-content.php. het gaat blijkbaar fout met real_escape_string.


$code = $conn->real_escape_string($_REQUEST['code'] );

Wat zit erin $_REQUEST['code'] ?
En wat is de associatie met je database?
blijkbaar gaat alles toch goed t/m de verwerking in php. het gaat later fout. ik duik er nog eens in. laat het dan weten

[size=xsmall]Toevoeging op 24/10/2024 16:22:14:[/size]

het probleem ontstaat bij $dom->loadHTML($importcode); qaarbij importcode de html data bevat.
met onderstaande php code werkt het nu wel.


$dom = new DOMDocument();
@$dom->loadHTML(mb_convert_encoding($importcode, 'HTML-ENTITIES', 'UTF-8'));

Reageren