Waarom werkt dit niet, FireFox geeft de fout: calc_chmod is not defined

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Robin van der Vliet

Robin van der Vliet

24/05/2010 10:06:55
Quote Anchor link
Waarom werkt dit niet.
Want als ik onderstaande code in een site zet.
Dan als ik dan iets invoer in die calculator gebeurt er niks en FireFox geeft rechts onder (Afbeelding) een fout en die fout is: calc_chmod is not defined (hoe vaker ik iets indrukt hoe meer fouten) maar die is wel gedefined in het cmhod.php bestand maar waarom werkt dit niet?

Dit is een stuk van het lay-out bestand.
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
21
22
23
24
25
26
27
28
29
30
31
<script type="text/javascript">
function link( url )
{
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }

xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("sitecontent").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
</script>

<a href="#" onclick="link('nl/software/chmod/')">CHMOD</a>
          <tr>
            <td width="654" height="524" valign="top" bgcolor="#FFFFFF">
                <div id=sitecontent>
                </div>
            </td>
          </tr>
Gewijzigd op 24/05/2010 10:07:15 door Robin van der Vliet
 
PHP hulp

PHP hulp

20/04/2024 04:22:17
 

24/05/2010 10:14:38
Quote Anchor link
Je haalt zeker javascript op?
Die moet dan eerst nog ge-evalt worden, anders is het gewoon data.
 
Robin van der Vliet

Robin van der Vliet

24/05/2010 10:17:05
Quote Anchor link
En hoe eval je iets?
Gewijzigd op 24/05/2010 10:17:21 door Robin van der Vliet
 
Noppes Homeland

Noppes Homeland

24/05/2010 10:18:04
Quote Anchor link
javascript is client site

php scripts staan op de server

het is met javascript mogelijk een request te doen bij de server, de server geeft dan iets terug, en met die teruggave kan je iets aanvangen

Denk dat je nog maar eens dit moet doornemen
http://www.w3schools.com/ajax/default.asp

of je pakt jquery of een ander javascript framework

Note: eval valt bij mij onder het kopje `bad practice`
Gewijzigd op 24/05/2010 10:20:45 door Noppes Homeland
 

24/05/2010 10:18:56
Quote Anchor link
Met google:
ajax dynamically load javascript
http://ajaxpatterns.org/On-Demand_Javascript
http://www.activewidgets.com/javascript.forum.6114.43/dynamic-load-javascript-from-javascript.html

Edit: Oh, eval is evil, klopt. Moet hij ook weten, dus moet hij wel naar iets anders gaan zoeken. Maar in ieder geval moet die code nog uitgevoerd worden, en om dan de response te evallen is wel heel erg makkelijk.
Gewijzigd op 24/05/2010 10:26:58 door
 
Willem Jan Z

Willem Jan Z

24/05/2010 12:17:48
Quote Anchor link
Kap eens met dat eval=evil. Gebruiken jullie wel eens JSON? Hoe denk je dat dat werkt? Eval is pas evil als een programmeerprogrammeur het op een verkeerde manier gebruikt.

edit: het is maandag
Gewijzigd op 24/05/2010 12:18:35 door Willem Jan Z
 

24/05/2010 13:24:40
Quote Anchor link
Willem:
Kap eens met dat eval=evil. Gebruiken jullie wel eens JSON? Hoe denk je dat dat werkt? Eval is pas evil als een programmeerprogrammeur het op een verkeerde manier gebruikt.

edit: het is maandag


Waarom denk je dan dat ik eerst over eval heb en dan niet?
Omdat het van de situatie afhangt. Als je gewoon een script wilt laden, dan kan je net zo goed een nieuw script element toevoegen, maar als je dus json hebt, dan heb je weer eval nodig.
Eval = evil hoeft niet te betekenen dat eval zelf gevaarlijk is, kan ook betekenen dat het gevaarlijk is voor programmeurs (althans zo denk ik erover).
 
Richard van Velzen

Richard van Velzen

24/05/2010 13:30:53
Quote Anchor link
Willem:
Kap eens met dat eval=evil. Gebruiken jullie wel eens JSON? Hoe denk je dat dat werkt? Eval is pas evil als een programmeerprogrammeur het op een verkeerde manier gebruikt.

edit: het is maandag


Waarvoor gebruik je eval dan?
http://json.org/json_parse.js
 
Willem Jan Z

Willem Jan Z

24/05/2010 14:21:46
Quote Anchor link
@Karl, gelukkig, dan begrijpen we elkaar :P
@Richard; Aha, blijkbaar help ik altijd de misvatting gehad dat JSON responses ge-eval'ed(?) werden. Mijn excuus, slecht voorbeeld. Ging me puur om een 'simpel' voorbeeld. Ging ik daar even de mist in :$ Wou alleen even punt maken dat eval niet van nature slecht is, maar dat het om het gebruik gaat.

Een beter voorbeeld is dan misschien preg_replace met de 'e' modifier.
 
Richard van Velzen

Richard van Velzen

25/05/2010 08:02:23
Quote Anchor link
Natuurlijk: eval kun je prima gebruiken. Het belangrijkste is dat je het niet gebruikt zonder na te denken over de consequenties. De code die in eval gaat heeft 0 extra restricties dus als iemand daar iets in weet te krijgen wat er niet hoort krijg je een dikke *BOOOOM* en kun je gaan debuggen tot je erbij neervalt.

En inderdaad: preg_replace met e-modifier is nutteloos en onbetrouwbaar: sinds PHP 5.3 hebben we lambda's in PHP en daarmee is preg_replace_callback in een klap veel makkelijker in het gebruik geworden. Niet dat ik het niet gebruikte: het is ook nog eens sneller. :-)

Ik gebruik momenteel eigenlijk geen eval. Klinkt vreemd, maar ik heb het *echt* niet nodig.
 



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.