[webeditor] Iframe content niet opvraagbaar

Pagina: 1
Acties:

  • Erpenator2
  • Registratie: Augustus 2003
  • Laatst online: 22:10
Beste Tweakers,

Sinds korte tijd heb ik last van een vreemd verschijnsel op mijn website. Op mijn site is het mogelijk om via een webeditor content op de site te plaatsen. De content zit in een Iframe en word via een submit naar de server gestuurd. Tenminste zo werkte het voor 2 jaar. Nu sinds korte tijd geeft een ingebouwde check steeds de melding dat de content van het iframe niet meer doorkomt en dus leeg is. Er zijn geen server updates gedaan en alles is dus hetzelfde gebleven.

Het lijkt niet bij iedereen van toepassing te zijn maar het is wel opvallend dat de browser versie alleen IE 6.0 bevat met de toevoeging SV1. OS lijkt niet van toepassing. Na wat speurwerk blijkt SV1 een extra header toevoeging te zijn die aan moet duiden dat er extra beveiliging is toegepast op IE.

Heeft iemand dezelfde problemen en weet iemand hoe dat ik dit probleem (snel) kan oplossen?

Groeten
Erik

Verwijderd

SV1 betekent dat SP2 is geinstalleerd. Kun je de code van je iframe eens posten?

  • Erpenator2
  • Registratie: Augustus 2003
  • Laatst online: 22:10
Dit is mijn Iframe tag:

<iframe id="iView" src="blank.html" trusted="yes" width="100%" height="280px" border="1"></iframe>

Dit is mijn code wanneer ik op de " opslaan" knop druk:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function doUpdate()
{
   if (iView.document.body.innerHTML == "")
   {
      return false;
   }
   else
   {
      var dataRep = null;
      dataRep = document.body.all.submitData;
      dataRep.value = iView.document.body.innerHTML;
      document.ppadeditor.submit();
   }
}


Als je nog meer code nodig hebt dan zal ik deze op verzoek plaatsen.

  • PhoeniX-
  • Registratie: Juni 2000
  • Laatst online: 14-04 07:14
Probeer het eens met een andere browser of met een andere versie van Internet Explorer .. op die manier kun je uitsluiten of het een server-side of client-side probleem is.

  • Erpenator2
  • Registratie: Augustus 2003
  • Laatst online: 22:10
Het probleem is dat ik zelf het probleem niet kan her-constueren, ik heb zelf geen Windows XP en op de PC's waar ik dat wel probeer vertonen niet dit probleem. Ook met andere versies heb ik dit geprobeerd.

De site word vooral in Internet Cafe's gebruikt en daarbij lijkt het dus wel of dat bepaalde restricties gelden. Ook heb ik geprobeerd om de beveiligingslevel op HOOG te zetten maar ook dan kan ik het probleem niet op mijn eigen pc krijgen.

Feit is dat het voorheen nauwlijksvoorkomt en het na afgelopen dinsdag (patch day?) regent met foutmeldingen..

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

Bij de nieuwe browsers kun je niet meer uit een IFrame lezen uit veiligheids overwegingen. (veel XSS problemen mee geweest)
Je zult het op een andere manier op moeten lissen (div's?)

  • Erpenator2
  • Registratie: Augustus 2003
  • Laatst online: 22:10
wasigh schreef op maandag 14 november 2005 @ 15:01:
Bij de nieuwe browsers kun je niet meer uit een IFrame lezen uit veiligheids overwegingen. (veel XSS problemen mee geweest)
Je zult het op een andere manier op moeten lissen (div's?)
Betekent dat dat niet dat je bij iedere nieuwe versie van Internet Explorer dit probleem moet krijgen ??? Dus dan zou ik als ik zelf zou testen op Windows 2k met de laatste nieuwe IE dezelfde fout met kunnen herproduceren??

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:13

crisp

Devver

Pixelated

wasigh schreef op maandag 14 november 2005 @ 15:01:
Bij de nieuwe browsers kun je niet meer uit een IFrame lezen uit veiligheids overwegingen. (veel XSS problemen mee geweest)
Je zult het op een andere manier op moeten lissen (div's?)
Dat zou toch gewoon same-domain/origin security moeten zijn? Of is dat zo buggy in IE dat MS dan maar helemaal de mogelijkheid heeft disabled in SP2 of 1 van de laatste fixes?

Intentionally left blank


  • Erpenator2
  • Registratie: Augustus 2003
  • Laatst online: 22:10
crisp schreef op maandag 14 november 2005 @ 17:33:
[...]

Dat zou toch gewoon same-domain/origin security moeten zijn? Of is dat zo buggy in IE dat MS dan maar helemaal de mogelijkheid heeft disabled in SP2 of 1 van de laatste fixes?
Dat zou ik dus ook hebben gedacht. Ik heb nog even gekeken en het blijft allemaal binnen hetzelfde domein.

Ook ben ik een browser check gaan doen, De nieuwste FF laad het Iframe niet eens. IE 6.0 wel ie 5.5 ook 5.0 ook en kan ik verder ook geen vreemde zaken constateren.

Op dit moment heb ik het aantal checks verder uitgebreid, ik krijg nu ontzettend veel emailtjes met daarin de meest nuttige informatie die ik kan bedenken.

Brower
OS
Content
Tijd
En overige normale data.


Wanneer iemand nog suggesties heeft hoor ik ze graag. Ook voor alternatieven voor het iframe zoals
hierboven gepost is (dus niet met een compleet pakket aan komen zetten :) )

hier wat sample code wat naar mijn idee zou moeten werken in FF maar dus niet doet. Bij deze is het probleem dus ook niet meer alleen IE gericht.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?
if(isset($_POST) && $_POST["Submit"] == "opslaan")
{
    echo "<pre>";
    var_dump($_POST);
    echo "</pre>";
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script>
function load()
{
 getIFrameDocument("iView").designMode = "On"; 
}

function doUpdate()
{
   if (iView.document.body.innerHTML == "")
   {
      return false;
   }
   else
   {
      var dataRep = null;
      dataRep = document.body.all.submitData;
      dataRep.value = iView.document.body.innerHTML;
   }
}
</script>
</head>

<body onLoad="load()">
<form action="" method="POST" name="ppadeditor" onSubmit="return doUpdate(this)">
<iframe id="iView" src="blank.html" trusted="yes" width="100%" height="280px" border="1"></iframe>
<input class="button" type="submit" name="Submit" value="opslaan" >
<input id='form_submit_contents' type="hidden" name="form_submit_contents" size="20,5">
</form>
</body>
</html>


Alvast weer bedankt

Erik

[ Voor 40% gewijzigd door Erpenator2 op 14-11-2005 22:19 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:13

crisp

Devver

Pixelated

Dit werkt hier prima onder Firefox 1.5rc1 en IE6 onder win2k:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script type="text/javascript">

function load()
{
    getIFrameDocument('iView').designMode = "On"; 
}

function getIFrameDocument(aID)
{
    // if contentDocument exists, W3C compliant (Mozilla)
    if (document.getElementById(aID).contentDocument)
    {
        return document.getElementById(aID).contentDocument;
    }
    else
    {
        // IE
        return document.frames[aID].document;
    }
}

function doUpdate(form)
{
    var IFrameData = getIFrameDocument('iView').body.innerHTML;
    if (IFrameData == '')
    {
        return false;
    }
    else
    {
        form.elements['form_submit_contents'].value = IFrameData;
        return true;
    }
}

</script>
</head>

<body onload="load()">
<?
if(!empty($_POST) && $_POST["Submit"] == "opslaan")
{
    echo "<pre>";
    var_dump($_POST);
    echo "</pre>";
}
?>
<form action="" method="post" onsubmit="return doUpdate(this)">
<iframe id="iView" src="blank.html" width="100%" height="280px"></iframe>
<input class="button" type="submit" name="Submit" value="opslaan" />
<input id='form_submit_contents' type="hidden" name="form_submit_contents" />
</form>
</body>
</html>

Intentionally left blank


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 01:13

crisp

Devver

Pixelated

en clientside --> Webdesign & Graphics

Intentionally left blank

Pagina: 1