[edit : je change le titre... c'était pas très clair]
bonjour à tous,
pour mon premier message sur ce forum, je voulais dire avant tout, tout le bien que je pense de ce site et de ce forum qui m'ont souvent tiré d'affaire, sans compter la source d'inspiration inépuisable que représente les articles du site pour progresser en dev web...
il se trouve que j'ai toutefois un petit souci avec le bout de code qui suit, d'où mes interrogations...
Le bout de code en question fait partie d'un genre de CMS que j'ai écrit l'année dernière, son but est de charger très classiquement dans une console d'administration une page HTML complète, dont les données résident dans une BDD mySQL, de façon à ce que l'utilisateur puisse modifier entièrement la page complète en local, sans la recharger, (images, textes et styles) et envoyer à la fin le résultat à la base via PHP.
Jusqu'à preuve du contraire (c'est à dire que je n'ai pas regardé ce projet depuis +6 mois...
) tout cela marchait fort bien et j'ai écris moi-même et modifié des articles sans souci.
Mais voilà maintenant que ça ne fonctionne plus !!!
Plus précisément, le code qui chargeait une image à la volée depuis le disque dur de l'internaute ne fonctionne plus, alors qu'il tournait fort bien !
voici ce bout de code fautif :
(cette fonction est plus complexe en fait mais j'ai juste gardé la partie qui merde...
)
quelques précisions :
• je code sur mac OSX.4.10
• les essais sont réalisés sur safari, firefox, et IE6 PC via une machine virtuelle parallels.
• avec safari, aucune image ne se charge, mais le texte dans la page se décale d'un caractère.
• avec firefox, la boite correspondant à la taille de l'image se charge, mais l'image est manquante.
• avec IE6, curieusement, l'image se charge parfaitement(donc en passant par le réseau), comme il en a toujours été !
• dernière chose : l'image est bel et bien chargée par le champ file dont voici pour mémoire le bout de code (en php)...:
Alors... je soupçonne un problème dans la syntaxe du chemin d'accès, à la ligne :
mais je ne suis pas sûr du tout...
en tous cas, si je remplace dans le code cette variable "nomfichier" par "1.jpg" (C.A.D.une image présente dans le même répertoire que la page d'admin), elle se charge correctement !!! (mais ça ne m'intéresse pas du tout...)
voilà, j'espère avoir été assez clair, et je m'excuse par avance si un sujet similaire a déjà été traité sur ce forum, je n'ai pas trouvé...
Modifié par pecos (06 Oct 2007 - 10:59)
bonjour à tous,
pour mon premier message sur ce forum, je voulais dire avant tout, tout le bien que je pense de ce site et de ce forum qui m'ont souvent tiré d'affaire, sans compter la source d'inspiration inépuisable que représente les articles du site pour progresser en dev web...
il se trouve que j'ai toutefois un petit souci avec le bout de code qui suit, d'où mes interrogations...
Le bout de code en question fait partie d'un genre de CMS que j'ai écrit l'année dernière, son but est de charger très classiquement dans une console d'administration une page HTML complète, dont les données résident dans une BDD mySQL, de façon à ce que l'utilisateur puisse modifier entièrement la page complète en local, sans la recharger, (images, textes et styles) et envoyer à la fin le résultat à la base via PHP.
Jusqu'à preuve du contraire (c'est à dire que je n'ai pas regardé ce projet depuis +6 mois...

Mais voilà maintenant que ça ne fonctionne plus !!!
Plus précisément, le code qui chargeait une image à la volée depuis le disque dur de l'internaute ne fonctionne plus, alors qu'il tournait fort bien !
voici ce bout de code fautif :
function instal_im(image, nom, ident)
{
with(document)
{
getElementById('reglagesimage').removeAttribute("class");
getElementById('reglagesimage').removeAttribute("className");
var numero = parseInt(getElementById('numero_paragraphe').value);
if(ident.substr(0,7) =="_charge")
{
getElementById(ident).setAttribute("name", "userfile"+numero);
getElementById(ident).setAttribute("id", "_userfile"+numero);
}
var nomfichier = "file://"+image;
nouvim = new Image();
nouvim.src = nomfichier;
var nouvelleimg = createElement("img");
with(nouvelleimg)
{
setAttribute("src", nomfichier);
setAttribute("align", "left");
setAttribute("name", "image"+numero);
setAttribute("id", "img"+numero);
setAttribute("class", "margeleft");
setAttribute("className", "margeleft");
}
getElementById("ART").insertBefore(nouvelleimg, getElementById("_style"+numero));
}
(cette fonction est plus complexe en fait mais j'ai juste gardé la partie qui merde...

quelques précisions :
• je code sur mac OSX.4.10
• les essais sont réalisés sur safari, firefox, et IE6 PC via une machine virtuelle parallels.
• avec safari, aucune image ne se charge, mais le texte dans la page se décale d'un caractère.
• avec firefox, la boite correspondant à la taille de l'image se charge, mais l'image est manquante.
• avec IE6, curieusement, l'image se charge parfaitement(donc en passant par le réseau), comme il en a toujours été !
• dernière chose : l'image est bel et bien chargée par le champ file dont voici pour mémoire le bout de code (en php)...:
for ($i=1;$i<9;$i++)
{
echo "<input type='file' size='10' name='charge$i' id='_charge$i' class='upload' ";
echo " onclick='javascript:recup_bon(this.name)' onchange='javascript:instal_im(this.value, this.name, this.id)'><br>";
}
Alors... je soupçonne un problème dans la syntaxe du chemin d'accès, à la ligne :
var nomfichier = "file://"+image;
mais je ne suis pas sûr du tout...

en tous cas, si je remplace dans le code cette variable "nomfichier" par "1.jpg" (C.A.D.une image présente dans le même répertoire que la page d'admin), elle se charge correctement !!! (mais ça ne m'intéresse pas du tout...)
voilà, j'espère avoir été assez clair, et je m'excuse par avance si un sujet similaire a déjà été traité sur ce forum, je n'ai pas trouvé...
Modifié par pecos (06 Oct 2007 - 10:59)