[JavaScript] document.write doet-ie niet

Pagina: 1
Acties:

  • Mad Marty
  • Registratie: Juni 2003
  • Laatst online: 00:35

Mad Marty

Je bent slimmer als je denkt!

Topicstarter
Naar aanleiding van dit topic ben ik al enkele uren hard aan het zoeken naar een oplossing voor mijn probleem en ik begin het steeds minder te zien.

Ik begin met de code, deze is als volgt:
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
if ($countbutton1 == 4) {
    $countbutton2 = $_POST['button2'];
    $fp = fopen("experiment/woord.data", "r") or die("Couldn't open file");
    $data = file('experiment/woord.data'); 

    fclose($fp); 

    $nummerwoord = $trial - 1;
    $woord = $data[$nummerwoord];
    
    echo $woord;
    
    ?>
    <script type="text/javascript">
    var woord = '<?php echo($woord);?>';
    document.write(woord);

    var startTime = new Date();
    var startInt = startTime.getTime();
    var elapsedTime = new Date();
    var currentTime = new Date();
            
    function getTime(){

... blablaenzovoorts...


Wat is het probleem?
Het probleem is dat het woord dat via $woord in var woord terecht komt niet op het scherm wordt getoond. Omdat een 'echo $woord' wel het juiste woord oplevert, weet ik zeker dat $woord goed is. Er gaat dus iets mis bij var woord of bij document.write(woord).

Wat heb ik geprobeerd?
Ik heb het halve internet afgezocht of ik misschien een syntaxisfout gemaakt heb, maar op elke site die ik tegen ben gekomen wordt het precies zoals ik het doe gedaan. De FireFox JavaScript Console geeft als fout 'unterminated string literal' met een mooi pijltje bij het aanhalingsteken na 'var woord =', waarna het woord boom wordt getoond (dus het staat als volgt in de FFJSC: var woord 'boom)
Wat ik daarom heb gedaan is alles proberen met deze aanhalingstekens, enkele, dubbele, weghalen, maar niets mag baten. Wanneer ik ze weghaal geeft de FFJSC 'boom is not defined', wat vrij logisch is, want het is een string dus er moeten wel aanhalingstekens omheen.

Ik heb één der mods al proberen te mailen, maar helaas heeft deze niet teruggemaild. Ik heb nu echt geen flauw idee meer wat het is en wat te doen.

Rail Away!


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12-05 22:46

Janoz

Moderator Devschuur®

!litemod

Al eens geprobeert om niet een newline op te nemen in $woord? Dat zal iig die compleet duidelijke javascript foutmelding ook verklaren he.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Waar staat die functie, in je body?

Daarnaast zit er zeer waarschijnlijk enters in je variabele en dat slikt JS niet standaard.

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Mad Marty
  • Registratie: Juni 2003
  • Laatst online: 00:35

Mad Marty

Je bent slimmer als je denkt!

Topicstarter
Janoz schreef op dinsdag 15 februari 2005 @ 15:28:
Al eens geprobeert om niet een newline op te nemen in $woord? Dat zal iig die compleet duidelijke javascript foutmelding ook verklaren he.
Sorry, ik wist niet dat er newlines in de array opgenomen werden bij gebruik van file()!
Hoe krijg ik deze uit de array? Toevoegen van "str_replace(array("\r", "\n"), "", $data);" werkt niet (ook niet wanneer $data vervangen wordt door $woord)...

Allright ik heb um, tis:

$data = str_replace(array("\r","\n"), "", $data);

En dan werkt-ie.


edit:
Kromme zin rechtgetrokken

edit:
Next edit:
str_replace geprobeerd...

edit:
Next next edit:
Dat-ie werkt...

[ Voor 43% gewijzigd door Mad Marty op 15-02-2005 15:57 ]

Rail Away!