Déclaration de fonction javascript [Résolu]

Signaler
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010
-
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010
-
Bonjour à tous,
Je désire utiliser en javascript l'équivalent de la fonction PHP "sprintf".
J'ai donc créé un fichier sprintf.js contenant des sources trouvées sur le net.
J'ai déclaré ce fichier dans l'entête de mon fichier HTML :
<script language='javascript' src='sprintf.js'></script>	


Lorsque je veux utiliser cette fonction dans une fonction javascript, j'ai une erreur "sprintf is not defined".

Où ai-je commis une erreur?
Merci d'avance

11 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Il te faut vérifier, si ce n'est déjà fait
- que le fichier est déclaré au bon endroit, chemin d'accès
- que le code généré par le PHP correspond bien à l'attendu, il arrive qu'une apostrophe mette la pagaille

La console d'erreur de par son message est aussi souvent instructive

Concernant l'IFRAME, il ne doit pas y avoir de problème si l'appel ne se fait pas inter IFRAME

;O)
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Bonjour,
j'ai une erreur "sprintf is not defined".
existe t-il réellement dans ton fichier une fonction s'appelant sprintf????

;O)
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

Bonjour,
Heu oui, quand même!
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Bonjour,
je m'en doutais un peu...

Si il y a plusieurs fichiers JS inclus il faut que celui qui contient la fonction soit appelé avant le fichier qui contient la fonction qui va appeler la fonction.
<script type="text/javascript" src='sprintf.js'></script>
<script type="text/javascript" src='fichier_qui_appele_sprintf.js'></script>
c'est une autre source de problème...

;O)
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

Je ne suis pas dans ce cas, mon script appelle directement une fonction présente dans le fichier js déclaré dans mon source PHP.
Petite précision : je travaille avec des frames, le souci provient peut-être de là?
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

Bonjour,
Le fichier est déclaré dans le source HTML, comme indiqué dans mon premier message.

J'ai simplifié le truc : dans un fichier PHP, je déclare ce fichier js :
require($rep . "/factures_soly/doc_sprintf.js");


...et j'appelle cette fonction :
$toto= sprintf1("%10.2f",'10.25854');	
echo "toto->$toto";


Résultat : le code de la fonction s'affiche à l'écran et se termine par cette ligne :
Fatal error: Call to undefined function sprintf1() in /data/prod/factures_soly/devis_modif.php on line 40
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

[Edit] : mon problème provient peut-être de la déclaration d'un fichier js dans mon source PHP??
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

Bon, j'ai fini par trouver une solution en récupérant de nouvelles sources js ici.
Tout fonctionne parfaitement, merci pour ton aide, petoleTeam!
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Bonjour,
que faut-il en conclure, une erreur dans le fichier JS ?

par contre pas sur que l'on puisse appeler une fonction javascript dans du PHP !
;O)
Messages postés
40
Date d'inscription
mardi 20 novembre 2007
Statut
Membre
Dernière intervention
7 juillet 2010

>que faut-il en conclure, une erreur dans le fichier JS ?

Oui, peut-être...

>par contre pas sur que l'on puisse appeler une fonction javascript dans du PHP !

En fait, je déclare le fichier JS (qui contient la fonction sprintf) dans le HTML, et cette fonction est appelée par un script JS du HTML.
Bref, tout fonctionne, et c'est là l'essentiel!