xml data niet langer getoond in IE8 maar wel in firefox

Status
Niet open voor verdere reacties.

gunters

Nieuwe gebruiker
Lid geworden
12 apr 2011
Berichten
4
Op de website www.arcosazules.com heb ik gebruik gemaakt van Spry Tabbed Pannels om vehuurprijzen in een extern data bestand op te slaan. Tot een paar weken geleden werkte dit perfect, maar plots waren de prijzen niet meer zichtbaar in Internet Explorer 8, maar wel nog steeds in Mozilla Firefox. Een voorbeeld van een pagina waar ik hiervan gebruik maak is http://www.arcosazules.com/NL_alexandro.html, onder het tablad “prijzen”.
De prijzen voor deze villa staan in een xml document in een submap “rates”.
Ik vroeg me af of iemand een idee hebt waar dit kan aanliggen? Ik heb al heel het internet afgespeurd, maar vind niets (dat ik versta dan toch :confused: )
 
Hoi gunters,
Ook IE7 blijkt aangetast: deze toont evenmin de seizoensperioden en de bijbehorende prijzen.
Als je in IE7 de gegenereerde broncode bekijkt, zie je dat deze exact hetzelfde is als de originele broncode. D.w.z. het SpryData.js heeft zijn werk niet goed gedaan voor de Internet Explorers.

Tja, en voor mij is dat een script dat ik niet even kan duiden, laat staan er verbeteringen in kan aanbrengen voor IE ... :rolleyes:

Om snel van alles af te zijn, zou ik de xml's vergeten, en de gegevens rechtstreeks in de html van de betreffende pagina plaatsen.
  • Daarna kan je kijken of je /* SpryData.js - Revision: Spry Preview Release 1.4 */ misschien met een update geholpen is.
  • Op dit moment is Spry 1.6.1 de laatste versie.
  • Met een Google op "download SpryData.js 1.6.1" kan je er ook ergens eentje vandaan halen waarvoor je je niet bij Adobe hoeft te registreren. ;)
Met vriendelijke groet,
CSShunter
 
Bedankt voor het antwoord.
Ik vreesde al dat dat de oplossing ging zijn... Het lastige is dan natuurlijk dat ik elk jaar voor elke villa en in elke taal de datums en prijzen manueel moet gaan ingeven (7 huizen x 5 talen = 35 pagina's aan te passen in plaats van anders 7 xml documentjes). Bestaat er misschien een andere oplossing om een paar gegevens uit een extern document te laden?
Alvast bedankt voor het antwoord
 
thx, ik kijk er alvast naar uit. Ik moet wel zeggen dat ik wel geen jota begrijp/ken van php... Hoop dat het zonder kennis van php ook in elkaar te knutselen valt....
 
Stap 1
Kijk hoe de door het SpryData.js gegenereerde broncode voor de tabel er in Firefox uitziet.
Dat blijkt te zijn:
HTML:
<div id="spryregion1">
<table id="tabel_prijzen" width="100%">
	<tbody>
	<tr>
		<th>Winterseizoen</th>
		<th>Laagseizoen</th>
		<th>Middenseizoen</th>
		<th>Hoogseizoen</th>
	</tr>
	<tr>
		<td>01/11/2010 - 31/03/2011</td>
		<td>01/04/2011 - 14/05/2011</td>
		<td>15/05/2011 - 25/06/2011</td>
		<td>26/06/2011 - 03/09/2011</td>
	</tr>
	<tr>
		<td>1000 euro</td>
		<td>1250 euro</td>
		<td>1800 euro</td>
		<td>2250 euro</td>
	</tr>
	</tbody>
</table>
</div>
Deze code zetten we in de broncode op de plaats van de originele:
HTML:
<div spry:region="ds1">
<table width="100%" id="tabel_prijzen">
	<tr>
		<th>Winter Season</th>
		<th>Low Season</th>
		<th>Mid Season</th>
		<th>High Season</th>
	</tr>
	<tr spry:repeat="ds1">
		<td>{winter}</td>
		<td>{low}</td>
		<td>{mid}</td>
		<td>{high}</td>
	</tr>
</table>
</div>
Met de pure code kan het Spry-script er nu niet meer bij.
Het resultaat is (met weglating van andere zaken):
Stap 2
Kopieer de code van het eerste rijtje, met de seizoensnamen in een bepaalde taal:
HTML:
<!-- includes/seasons-NL.htm -->
	<tr>
		<th>Winterseizoen</th>
		<th>Laagseizoen</th>
		<th>Middenseizoen</th>
		<th>Hoogseizoen</th>
	</tr>
Plak dit in een leeg Kladblok-bestandje, en sla dit op met UTF-8 codering, met bv. de naam: seasons-NL.htm, in een nieuw mapje "includes".
NB: dit is alleen een html-fragment, meer dan deze regeltjes komt er niet in!
  • Het resultaat is: includes/seasons-NL.htm
    Hier zitten helemaal geen styles bij, maar dat klopt. Die komen later vanzelf weer terug.
Voor andere talen maak je analoge bestandjes.

Stap 3
Doe hetzelfde met het tweede rijtje, de seizoensperioden:
HTML:
<!-- includes/seasonperiods-NL.htm -->
	<tr>
		<td>01/11/2010 - 31/03/2011</td>
		<td>01/04/2011 - 14/05/2011</td>
		<td>15/05/2011 - 25/06/2011</td>
		<td>26/06/2011 - 03/09/2011</td>
	</tr>
Desgewenst voor US-bezoekers in aangepaste US-notatie voor de datum in een analoog bestandje.

Stap 4
En tenslotte het laatste rijtje, de prijzen in Euro's van elke residentie, bv.:
HTML:
<!-- includes/seasonprices-Alexandro-EU.htm -->
	<tr>
		<td>1000 euro</td>
		<td>1250 euro</td>
		<td>1800 euro</td>
		<td>2250 euro</td>
	</tr>
Desgewenst analoge bestandjes met aangepaste getallen voor andere valuta.

Stap 5
Terug naar de pagina van een residentie.
Nu kan de hele tabel vervangen worden door de verwijzingen:
HTML:
<div id="spryregion1">
<table id="tabel_prijzen" width="100%">
	<tbody>
<?php include("includes/seasons-NL.htm"); ?>
<?php include("includes/seasonperiods-NL.htm"); ?>
<?php include("includes/seasonprices-Alexandro-EU.htm"); ?>
	</tbody>
</table>
</div>
Hé, de php-code is wel doorgekomen (zie broncode), maar er is nog geen tabel!

Stap 6
Dat kan kloppen: PHP is "Preprocessing" door de server, en de server weet alleen dat er gepreprocessed moet worden, als de pagina de uitgang .php heeft.
We hernoemen de test-Casa-Alexandro-nw2.htm tot test-Casa-Alexandro-nw2.php. En even uploaden.

Hoppa! Daar staan ze! :)

Voor de andere pagina's/talen hoef je nu alleen maar (éénmalig) de namen van de includes te veranderen. Alle Engelse pagina's krijgen de <?php include("includes/seasons-EN.htm"); ?>, alle Franse pagina's de <?php include("includes/seasons-FR.htm"); ?>, enz.
Per jaar hoeven alleen de includes voor de perioden en de prijzen bijgesteld te worden, en de pagina's wijzigen zichzelf.
Klaar!

Met vriendelijke groet,
CSShunter
 
Super, alles werkt weer perfect en het was niet zo erg moeilijk (als iemand het goed uitlegt haha :thumb:)
Heb je trouwens enig idee hoe of waar je makkelijk en duidelijk php kan leren op het web? Ik ken html en flash, maar niet gigantisch perfect... Enkel voldoende om een site als deze in elkaar geknutseld te krijgen. De php ziet me er heel makkelijk uit om een site op te bouwen, of het ik het mis?

Alvast super bedankt voor de hulp
 
Ha, mooi dat ie gelukt is! :)

... enig idee hoe of waar je makkelijk en duidelijk php kan leren op het web?
PHP is er in soorten. De php-includes zijn van het makkelijke soort: daarmee kan je geknipte html-fragmenten op elke plaats in de html droppen. Ook zéér geschikt voor headers, menus, footers, enz. die steeds hetzelfde op elke pagina moeten blijven.
Mocht er dan iets in bv. het menu moeten veranderen, dan doe je dat 1 keer, en alle pagina's hebben in één klap dan het nieuwe menu!

Maar met php kan nog veel meer: het kan ook als script-taal op de server gebruikt worden (min of meer een soort javascript dus), en wordt dan o.a. gebruikt voor de bediening (achter de schermen) van hele CMS'sen (Content Management Systems).
Dan wordt het een stuk ingewikkelder: allerlei variabelen, enz. komen dan om de hoek kijken.

Voor het maken van een simpele php-site (zonder CMS, met alleen includes) is hier een:
Als je meer de diepte in wilt, dan is er bv.:
Heb je hier voorlopig voldoende aan? ;)

Met vriendelijke groet,
CSShunter
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan