Probléme insertion d'images

Probléme insertion d'images - PHP - Programmation

Marsh Posté le 26-04-2006 à 13:46:54    

Bonjour à tous,
J'ai un probléme avec mon blog (smartblog) pour l'insertion d'image.
Lorsque je met une image via internet explorer ça me met le lien de l'image comme ceci, dans l'éditeur de texte(pour insérer les images sur le blog) :
<img style="" src="../magalerie/img.jpg"> et dans le post de mon blog elle s'affiche a la bonne adresse. Donc tout est ok.
Le probléme vient lors de l'insertion via Firefox. Le lien de mon image dans l'éditeur devient :
<span class="BlogNote"><img src="../magalerie/ooooo.jpg" style=""></span> et le probléme est que le lien, au lieu de pointer vers http://site.com/blog/magalerie/img.jpg, comme avec IE,  pointe vers http://site.com/magelerie/img.jpg.
J'ai chercher plusieurs heures dans les scripts du blogs comment faire sans trouver.  
Je pense que ça peut provenir de deux page celle ci en Javascript :  
 

Citation :

// Cross-Browser Rich Text Editor
// http://www.kevinroth.com/rte/demo.htm
// Written by Kevin Roth (kevin@NOSPAMkevinroth.com - remove NOSPAM)
 
//init variables
var isRichText = false;
var rng;
var currentRTE;
var allRTEs = "";
 
var isIE;
var isGecko;
var isSafari;
var isKonqueror;
 
var imagesPath;
var includesPath;
var cssFile;
 
 
function initRTE(imgPath, incPath, css) {
 //set browser vars
 var ua = navigator.userAgent.toLowerCase();
 isIE = ((ua.indexOf("msie" ) != -1) && (ua.indexOf("opera" ) == -1) && (ua.indexOf("webtv" ) == -1));  
 isGecko = (ua.indexOf("gecko" ) != -1);
 isSafari = (ua.indexOf("safari" ) != -1);
 isKonqueror = (ua.indexOf("konqueror" ) != -1);
 
 //check to see if designMode mode is available
 if (document.getElementById && document.designMode && !isSafari && !isKonqueror) {
  isRichText = true;
 }
 
 if (!isIE) document.captureEvents(Event.MOUSEOVER | Event.MOUSEOUT | Event.MOUSEDOWN | Event.MOUSEUP);
 document.onmouseover = raiseButton;
 document.onmouseout  = normalButton;
 document.onmousedown = lowerButton;
 document.onmouseup   = raiseButton;
 
 //set paths vars
 imagesPath = imgPath;
 includesPath = incPath;
 cssFile = css;
 
 if (isRichText) document.writeln('<style type="text/css">@import "' + includesPath + 'rte.css";</style>');
 
 //for testing standard textarea, uncomment the following line
 //isRichText = false;
}
 
function writeRichText(rte, html, width, height, buttons, readOnly) {
 if (isRichText) {
  if (allRTEs.length > 0) allRTEs += ";";
  allRTEs += rte;
  writeRTE(rte, html, width, height, buttons, readOnly);
 } else {
  writeDefault(rte, html, width, height, buttons, readOnly);
 }
}
 
function writeDefault(rte, html, width, height, buttons, readOnly) {
 if (!readOnly) {
  document.writeln('<textarea name="' + rte + '" id="' + rte + '" style="width: ' + width + 'px; height: ' + height + 'px;">' + html + '</textarea>');
 } else {
  document.writeln('<textarea name="' + rte + '" id="' + rte + '" style="width: ' + width + 'px; height: ' + height + 'px;" readonly>' + html + '</textarea>');
 }
}
 
function raiseButton(e) {
 if (isIE) {
  var el = window.event.srcElement;
 } else {
  var el= e.target;
 }
 
 className = el.className;
 if (className == 'rteImage' || className == 'rteImageLowered') {
  el.className = 'rteImageRaised';
 }
}
 
function normalButton(e) {
 if (isIE) {
  var el = window.event.srcElement;
 } else {
  var el= e.target;
 }
 
 className = el.className;
 if (className == 'rteImageRaised' || className == 'rteImageLowered') {
  el.className = 'rteImage';
 }
}
 
function lowerButton(e) {
 if (isIE) {
  var el = window.event.srcElement;
 } else {
  var el= e.target;
 }
 
 className = el.className;
 if (className == 'rteImage' || className == 'rteImageRaised') {
  el.className = 'rteImageLowered';
 }
}
 
function writeRTE(rte, html, width, height, buttons, readOnly) {
 if (readOnly) buttons = false;
 
 //adjust minimum table widths
 if (isIE) {
  if (buttons && (width < 600)) width = 600;
  var tablewidth = width;
 } else {
  if (buttons && (width < 500)) width = 600;
  var tablewidth = width + 4;
 }
 
 if (buttons == true) {
  document.writeln('<table class="rteBack" cellpadding=0 cellspacing=0 id="Buttons1_' + rte + '" width="' + tablewidth + '">');
  document.writeln(' <tr>');
  document.writeln('  <td>');
  document.writeln('   <select id="formatblock_' + rte + '" onchange="Select(\'' + rte + '\', this.id);">');
  document.writeln('    <option value="">[Style]</option>');
  document.writeln('    <option value="<p>">Paragraphe</option>');
  document.writeln('    <option value="<h1>">Entête 1 <h1></option>');
  document.writeln('    <option value="<h2>">Entête 2 <h2></option>');
  document.writeln('    <option value="<h3>">Entête 3 <h3></option>');
  document.writeln('    <option value="<h4>">Entête 4 <h4></option>');
  document.writeln('    <option value="<h5>">Entête 5 <h5></option>');
  document.writeln('    <option value="<h6>">Entête 6 <h6></option>');
  document.writeln('    <option value="<address>">Addresse <ADDR></option>');
  document.writeln('    <option value="<pre>">Formaté <pre></option>');
  document.writeln('   </select>');
  document.writeln('  </td>');
  document.writeln('  <td>');
  document.writeln('   <select id="fontname_' + rte + '" onchange="Select(\'' + rte + '\', this.id)">');
  document.writeln('    <option value="Font" selected>[Police]</option>');
  document.writeln('    <option value="Arial, Helvetica, sans-serif">Arial</option>');
  document.writeln('    <option value="Courier New, Courier, mono">Courier New</option>');
  document.writeln('    <option value="Times New Roman, Times, serif">Times New Roman</option>');
  document.writeln('    <option value="Verdana, Arial, Helvetica, sans-serif">Verdana</option>');
  document.writeln('   </select>');
  document.writeln('  </td>');
  document.writeln('  <td>');
  document.writeln('   <select unselectable="on" id="fontsize_' + rte + '" onchange="Select(\'' + rte + '\', this.id);">');
  document.writeln('    <option value="Size">[Taille]</option>');
  document.writeln('    <option value="1">1</option>');
  document.writeln('    <option value="2">2</option>');
  document.writeln('    <option value="3">3</option>');
  document.writeln('    <option value="4">4</option>');
  document.writeln('    <option value="5">5</option>');
  document.writeln('    <option value="6">6</option>');
  document.writeln('    <option value="7">7</option>');
  document.writeln('   </select>');
  document.writeln('  </td>');
  document.writeln('  <td width="100%">');
  document.writeln('  </td>');
  document.writeln(' </tr>');
  document.writeln('</table>');
  document.writeln('<table class="rteBack" cellpadding="0"  cellspacing="0" id="Buttons2_' + rte + '" width="' + tablewidth + '">');
  document.writeln(' <tr>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'bold.gif" width="25" height="24" alt="Gras" title="Gras" onClick="FormatText(\'' + rte + '\', \'bold\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'italic.gif" width="25" height="24" alt="Italic" title="Italique" onClick="FormatText(\'' + rte + '\', \'italic\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'underline.gif" width="25" height="24" alt="Souligné" title="Souligné" onClick="FormatText(\'' + rte + '\', \'underline\', \'\')"></td>');
  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'left_just.gif" width="25" height="24" alt="Aligné à gauche" title="Aligné à gauche" onClick="FormatText(\'' + rte + '\', \'justifyleft\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'centre.gif" width="25" height="24" alt="Centré" title="Centré" onClick="FormatText(\'' + rte + '\', \'justifycenter\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'right_just.gif" width="25" height="24" alt="Alignement à droite" title="Aligné à droite" onClick="FormatText(\'' + rte + '\', \'justifyright\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'justifyfull.gif" width="25" height="24" alt="Justifié" title="Justifié" onclick="FormatText(\'' + rte + '\', \'justifyfull\', \'\')"></td>');
  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'hr.gif" width="25" height="24" alt="Ligne horizontale" title="Ligne horizontale" onClick="FormatText(\'' + rte + '\', \'inserthorizontalrule\', \'\')"></td>');
  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'numbered_list.gif" width="25" height="24" alt="Liste ordonnée" title="Liste ordonnée" onClick="FormatText(\'' + rte + '\', \'insertorderedlist\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'list.gif" width="25" height="24" alt="Liste à puce" title="Liste à puce" onClick="FormatText(\'' + rte + '\', \'insertunorderedlist\', \'\')"></td>');
  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="0" height="20" border="0" alt=""></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'outdent.gif" width="25" height="24" alt="Augmenter le retrait" title="Augmenter le retrait" onClick="FormatText(\'' + rte + '\', \'outdent\', \'\')"></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'indent.gif" width="25" height="24" alt="Diminuer le retrait" title="Diminuer le retrait" onClick="FormatText(\'' + rte + '\', \'indent\', \'\')"></td>');
  document.writeln('  <td><div id="forecolor_' + rte + '"><img class="rteImage" src="' + imagesPath + 'textcolor.gif" width="25" height="24" alt="Couleur du texte" title="Couleur du texte" onClick="FormatText(\'' + rte + '\', \'forecolor\', \'\')"></div></td>');
  document.writeln('  <td><div id="hilitecolor_' + rte + '"><img class="rteImage" src="' + imagesPath + 'bgcolor.gif" width="25" height="24" alt="Couleur arrière plan" title="Couleur arrière plan" onClick="FormatText(\'' + rte + '\', \'hilitecolor\', \'\')"></div></td>');
  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'hyperlink.gif" width="25" height="24" alt="Inserer un lien" title="Inserer un lien" onClick="FormatText(\'' + rte + '\', \'createlink\')"></td>');
  document.writeln('  <td><div id="InsertImage_' + rte + '"><img class="rteImage" src="' + imagesPath + 'galerie.gif" width="25" height="24" alt="Add Image" title="Voir ma galerie photo"  onClick="VoirGalerie(\'' + rte + '\')"></div></td>');
  document.writeln('  <td><div id="InsertImage_' + rte + '"><img class="rteImage" src="' + imagesPath + 'smiley.gif" width="25" height="24" alt="Ajouter un smiley" title="Ajouter un smiley" onClick="insererSmiley(\'' + rte + '\', \'smiley\', \'\')"></div></td>');
 
  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'image.gif" width="25" height="24" alt="Add Image" title="Ajouter une image" onClick="AddImage(\'' + rte + '\')"></td>');
  //if (isIE) {
   //document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'spellcheck.gif" width="25" height="24" alt="Spell Check" title="Orthographe (désactivé)" onClick="checkspell()"></td>');
  //}
//  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
//  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'cut.gif" width="25" height="24" alt="Cut" title="Cut" onClick="FormatText(\'' + rte + '\', \'cut\')"></td>');
//  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'copy.gif" width="25" height="24" alt="Copy" title="Copy" onClick="FormatText(\'' + rte + '\', \'copy\')"></td>');
//  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'paste.gif" width="25" height="24" alt="Paste" title="Paste" onClick="FormatText(\'' + rte + '\', \'paste\')"></td>');
//  document.writeln('  <td><img class="rteVertSep" src="' + imagesPath + 'blackdot.gif" width="1" height="20" border="0" alt=""></td>');
//  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'undo.gif" width="25" height="24" alt="Undo" title="Undo" onClick="FormatText(\'' + rte + '\', \'undo\')"></td>');
//  document.writeln('  <td><img class="rteImage" src="' + imagesPath + 'redo.gif" width="25" height="24" alt="Redo" title="Redo" onClick="FormatText(\'' + rte + '\', \'redo\')"></td>');
  document.writeln('  <td width="100%"></td>');
  document.writeln(' </tr>');
  document.writeln('</table>');
 }
 
 document.writeln('<iframe id="' + rte + '" name="' + rte + '" width="' + width + 'px" height="' + height + 'px"></iframe>');
 if (!readOnly) document.writeln('<br /><input class="pair" type="checkbox" id="chkSrc' + rte + '" onclick="toggleHTMLSrc(\'' + rte + '\');" /><span class="BlogNote">&nbsp;Voir la source HTML</span>');
 
 //document.writeln('<iframe width="154" height="104" id="smiley' + rte + '" src="' + includesPath + 'smiley.php" marginwidth="0" marginheight="0" scrolling="no" style="visibility:hidden; display: none; position: absolute;"></iframe>');
 
 document.writeln('<iframe width="154" height="104" id="cp' + rte + '" src="' + includesPath + 'palette.htm" marginwidth="0" marginheight="0" scrolling="no" style="visibility:hidden; display: none; position: absolute;"></iframe>');
 document.writeln('<iframe width="134" height="111" id="smi' + rte + '" src="' + includesPath + 'smiley.php" marginwidth="0" marginheight="0" scrolling="auto" style="visibility:hidden; display: none; position: absolute;"></iframe>');
 
 //document.writeln('<iframe width="550" height="550" id="smi' + rte + '" src="smiley.htm" marginwidth="0" marginheight="0" scrolling="no" style="visibility:hidden; display: none; position: absolute;"></iframe>');
 document.writeln('<input type="hidden" id="hdn' + rte + '" name="' + rte + '" value="">');
 document.getElementById('hdn' + rte).value = html;
 enableDesignMode(rte, html, readOnly);
}
 
function enableDesignMode(rte, html, readOnly) {
 var frameHtml = "<html id=\"" + rte + "\">\n";
 frameHtml += "<head>\n";
 //to reference your stylesheet, set href property below to your stylesheet path and uncomment
 if (cssFile.length > 0) {
  frameHtml += "<link media=\"all\" type=\"text/css\" href=\"" + cssFile + "\" rel=\"stylesheet\">\n";
 } else {
  frameHtml += "<style>\n";
  frameHtml += "body {\n";
  frameHtml += " background: #FFFFFF;\n";
  frameHtml += " margin: 0px;\n";
  frameHtml += " padding: 0px;\n";
  frameHtml += "}\n";
  frameHtml += "</style>\n";
 }
 frameHtml += "</head>\n";
 frameHtml += "<body>\n";
 frameHtml += html + "\n";
 frameHtml += "</body>\n";
 frameHtml += "</html>";
 
 if (document.all) {
  var oRTE = frames[rte].document;
  oRTE.open();
  oRTE.write(frameHtml);
  oRTE.close();
  if (!readOnly) oRTE.designMode = "On";
 } else {
  try {
   if (!readOnly) document.getElementById(rte).contentDocument.designMode = "on";
   try {
    var oRTE = document.getElementById(rte).contentWindow.document;
    oRTE.open();
    oRTE.write(frameHtml);
    oRTE.close();
    if (isGecko && !readOnly) {
     //attach a keyboard handler for gecko browsers to make keyboard shortcuts work
     oRTE.addEventListener("keypress", kb_handler, true);
    }
   } catch (e) {
    alert("Error preloading content." );
   }
  } catch (e) {
   //gecko may take some time to enable design mode.
   //Keep looping until able to set.
   if (isGecko) {
    setTimeout("enableDesignMode('" + rte + "', '" + html + "', " + readOnly + " );", 10);
   } else {
    return false;
   }
  }
 }
}
 
function updateRTEs() {
 var vRTEs = allRTEs.split(";" );
 for (var i = 0; i < vRTEs.length; i++) {
  updateRTE(vRTEs[i]);
 }
}
 
function updateRTE(rte) {
 if (!isRichText) return;
 
 //set message value
 var oHdnMessage = document.getElementById('hdn' + rte);
 var oRTE = document.getElementById(rte);
 var readOnly = false;
 
 //check for readOnly mode
 if (document.all) {
  if (frames[rte].document.designMode != "On" ) readOnly = true;
 } else {
  if (document.getElementById(rte).contentDocument.designMode != "on" ) readOnly = true;
 }
 
 if (isRichText && !readOnly) {
  //if viewing source, switch back to design view
  if (document.getElementById("chkSrc" + rte).checked) {
   document.getElementById("chkSrc" + rte).checked = false;
   toggleHTMLSrc(rte);
  }
   
  if (oHdnMessage.value == null) oHdnMessage.value = "";
  if (document.all) {
   oHdnMessage.value = frames[rte].document.body.innerHTML;
  } else {
   oHdnMessage.value = oRTE.contentWindow.document.body.innerHTML;
  }
   
  //if there is no content (other than formatting) set value to nothing
  if (stripHTML(oHdnMessage.value.replace("&nbsp;", " " )) == ""  
   && oHdnMessage.value.toLowerCase().search("<hr" ) == -1
   && oHdnMessage.value.toLowerCase().search("<img" ) == -1) oHdnMessage.value = "";
  //fix for gecko
  if (escape(oHdnMessage.value) == "%3Cbr%3E%0D%0A%0D%0A%0D%0A" ) oHdnMessage.value = "";
 }
}
 
function toggleHTMLSrc(rte) {
 //contributed by Bob Hutzel (thanks Bob!)
 var oRTE;
 if (document.all) {
  oRTE = frames[rte].document;
 } else {
  oRTE = document.getElementById(rte).contentWindow.document;
 }
 
 if (document.getElementById("chkSrc" + rte).checked) {
  document.getElementById("Buttons1_" + rte).style.visibility = "hidden";
  document.getElementById("Buttons2_" + rte).style.visibility = "hidden";
  if (document.all) {
   oRTE.body.innerText = oRTE.body.innerHTML;
  } else {
   var htmlSrc = oRTE.createTextNode(oRTE.body.innerHTML);
   oRTE.body.innerHTML = "";
   oRTE.body.appendChild(htmlSrc);
  }
 } else {
  document.getElementById("Buttons1_" + rte).style.visibility = "visible";
  document.getElementById("Buttons2_" + rte).style.visibility = "visible";
  if (document.all) {
   //fix for IE
   var output = escape(oRTE.body.innerText);
   output = output.replace("%3CP%3E%0D%0A%3CHR%3E", "%3CHR%3E" );
   output = output.replace("%3CHR%3E%0D%0A%3C/P%3E", "%3CHR%3E" );
   
   oRTE.body.innerHTML = unescape(output);
  } else {
   var htmlSrc = oRTE.body.ownerDocument.createRange();
   htmlSrc.selectNodeContents(oRTE.body);
   oRTE.body.innerHTML = htmlSrc.toString();
  }
 }
}
 
//Function to format text in the text box
function FormatText(rte, command, option) {
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
   
  //get current selected range
  var selection = oRTE.document.selection;  
  if (selection != null) {
   rng = selection.createRange();
  }
 } else {
  oRTE = document.getElementById(rte).contentWindow;
   
  //get currently selected range
  var selection = oRTE.getSelection();
  rng = selection.getRangeAt(selection.rangeCount - 1).cloneRange();
 }
 
 try {
  if ((command == "forecolor" ) || (command == "hilitecolor" )) {
   //save current values
   parent.command = command;
   currentRTE = rte;
   
   //position and show color palette
   buttonElement = document.getElementById(command + '_' + rte);
   // Ernst de Moor: Fix the amount of digging parents up, in case the RTE editor itself is displayed in a div.
   document.getElementById('cp' + rte).style.left = getOffsetLeft(buttonElement, 4) + "px";
   document.getElementById('cp' + rte).style.top = (getOffsetTop(buttonElement, 4) + buttonElement.offsetHeight + 4) + "px";
   if (document.getElementById('cp' + rte).style.visibility == "hidden" ) {
    document.getElementById('cp' + rte).style.visibility = "visible";
    document.getElementById('cp' + rte).style.display = "inline";
   } else {
    document.getElementById('cp' + rte).style.visibility = "hidden";
    document.getElementById('cp' + rte).style.display = "none";
   }
  } else if (command == "createlink" ) {
   var szURL = prompt("Entrer votre url:", "http://" );
   try {
    //ignore error for blank urls
    oRTE.document.execCommand("Unlink", false, null);
    oRTE.document.execCommand("CreateLink", false, szURL);
   } catch (e) {
    //do nothing
   }
  } else if (command == "smiley" ) {
  //command = "InsertImage";
  insererSmiley(rte, command, option)
   
  }else{
  oRTE.focus();
  oRTE.document.execCommand(command, false, option);
  oRTE.focus();
  }
 } catch (e) {
  alert(e);
 }
}
 
function insererSmiley(rte, command, option){
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
   
  //get current selected range
  var selection = oRTE.document.selection;  
  if (selection != null) {
   rng = selection.createRange();
  }
 } else {
  oRTE = document.getElementById(rte).contentWindow;
   
  //get currently selected range
  var selection = oRTE.getSelection();
  rng = selection.getRangeAt(selection.rangeCount - 1).cloneRange();
 }
         command = "InsertImage";
   parent.command = command;
   currentRTE = rte;
   
   //position and show color palette
   buttonElement = document.getElementById(command + '_' + rte);
   // Ernst de Moor: Fix the amount of digging parents up, in case the RTE editor itself is displayed in a div.
   document.getElementById('smi' + rte).style.left = getOffsetLeft(buttonElement, 4) + "px";
   document.getElementById('smi' + rte).style.top = (getOffsetTop(buttonElement, 4) + buttonElement.offsetHeight + 4) + "px";
   if (document.getElementById('smi' + rte).style.visibility == "hidden" ) {
    document.getElementById('smi' + rte).style.visibility = "visible";
    document.getElementById('smi' + rte).style.display = "inline";
   } else {
    document.getElementById('smi' + rte).style.visibility = "hidden";
    document.getElementById('smi' + rte).style.display = "none";
   }
 //window.open('smiley.php','Commentaires','location=no,toolbar=no,directories=no,menubar=no,resizable=no,scrollbars=yes,status=no,width=150,height=150,screenY=100,screenX=100');
 
 
 
 //oRTE.focus();
 //oRTE.document.execCommand("InsertImage", false, "../magalerie/smilies/icon_smile.gif" );
 //oRTE.focus();
 
 //document.writeln('<iframe width="154" height="104" src="smiley.php" marginwidth="0" marginheight="0" scrolling="no" style="visibility:hidden; display: none; position: absolute;"></iframe>');
 
 
}
 
 
//Function to set color
function setColor(color) {
 var rte = currentRTE;
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
 } else {
  oRTE = document.getElementById(rte).contentWindow;
 }
 
 var parentCommand = parent.command;
 if (document.all) {
  //retrieve selected range
  var sel = oRTE.document.selection;  
  if (parentCommand == "hilitecolor" ) parentCommand = "backcolor";
  if (sel != null) {
   var newRng = sel.createRange();
   newRng = rng;
   newRng.select();
  }
 }
 oRTE.focus();
 oRTE.document.execCommand(parentCommand, false, color);
 oRTE.focus();
 document.getElementById('cp' + rte).style.visibility = "hidden";
 document.getElementById('cp' + rte).style.display = "none";
}
 
 
function addSmiley(id) {
//alert('ici');
 var rte = currentRTE;
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
 } else {
  oRTE = document.getElementById(rte).contentWindow;
 }
 
 var parentCommand = parent.command;
 if (document.all) {
  //retrieve selected range
  var sel = oRTE.document.selection;  
  if (sel != null) {
   var newRng = sel.createRange();
   newRng = rng;
   newRng.select();
  }
 }
 oRTE.focus();
 oRTE.document.execCommand("InsertImage", false, id);
 oRTE.focus();
 
}
 
 
 
//Function to add image
function AddImage(rte) {
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
   
  //get current selected range
  var selection = oRTE.document.selection;  
  if (selection != null) {
   rng = selection.createRange();
  }
 } else {
  oRTE = document.getElementById(rte).contentWindow;
   
  //get currently selected range
  var selection = oRTE.getSelection();
  rng = selection.getRangeAt(selection.rangeCount - 1).cloneRange();
 }
 
 imagePath = prompt('Tapez le nom de votre image SANS l\' extension', '');
 imagePath = 'magalerie/' + imagePath + '.jpg' ;    
 if ((imagePath != null) && (imagePath != "" )) {
  oRTE.focus();
  oRTE.document.execCommand('InsertImage', false, imagePath);
  oRTE.focus();
 }
}
 
function VoirGalerie(rte) {
 
 
 //imagePath = prompt('Tapez le nom de votre image SANS l\' extension', '');
 window.open('magalerie.php','Photos','location=no,toolbar=no,directories=no,menubar=no,resizable=no,scrollbars=yes,status=no,width=550,height=550,screenY=100,screenX=100');    
 //if ((imagePath != null) && (imagePath != "" )) {
  //oRTE.focus();
  //oRTE.document.execCommand('InsertImage', false, imagePath);
  //oRTE.focus();
 //}
}
 
//function to perform spell check
function checkspell() {
 try {
  var tmpis = new ActiveXObject("ieSpell.ieSpellExtension" );
  tmpis.CheckAllLinkedDocuments(document);
 }
 catch(exception) {
  if(exception.number==-2146827859) {
   if (confirm("ieSpell not detected.  Click Ok to go to download page." ))
    window.open("http://www.iespell.com/download.php","DownLoad" );
  } else {
   alert("Error Loading ieSpell: Exception " + exception.number);
  }
 }
}
 
// Ernst de Moor: Fix the amount of digging parents up, in case the RTE editor itself is displayed in a div.
function getOffsetTop(elm, parents_up) {
 var mOffsetTop = elm.offsetTop;
 var mOffsetParent = elm.offsetParent;
 
 if(!parents_up) {
  parents_up = 10000; // arbitrary big number
 }
 while(parents_up>0 && mOffsetParent) {
  mOffsetTop += mOffsetParent.offsetTop;
  mOffsetParent = mOffsetParent.offsetParent;
  parents_up--;
 }
 
 return mOffsetTop;
}
 
// Ernst de Moor: Fix the amount of digging parents up, in case the RTE editor itself is displayed in a div.
function getOffsetLeft(elm, parents_up) {
 var mOffsetLeft = elm.offsetLeft;
 var mOffsetParent = elm.offsetParent;
 
 if(!parents_up) {
  parents_up = 10000; // arbitrary big number
 }
 while(parents_up>0 && mOffsetParent) {
  mOffsetLeft += mOffsetParent.offsetLeft;
  mOffsetParent = mOffsetParent.offsetParent;
  parents_up--;
 }
 
 return mOffsetLeft;
}
 
function Select(rte, selectname) {
 var oRTE;
 if (document.all) {
  oRTE = frames[rte];
   
  //get current selected range
  var selection = oRTE.document.selection;  
  if (selection != null) {
   rng = selection.createRange();
  }
 } else {
  oRTE = document.getElementById(rte).contentWindow;
   
  //get currently selected range
  var selection = oRTE.getSelection();
  rng = selection.getRangeAt(selection.rangeCount - 1).cloneRange();
 }
 
 var idx = document.getElementById(selectname).selectedIndex;
 // First one is always a label
 if (idx != 0) {
  var selected = document.getElementById(selectname).options[idx].value;
  var cmd = selectname.replace('_' + rte, '');
  oRTE.focus();
  oRTE.document.execCommand(cmd, false, selected);
  oRTE.focus();
  document.getElementById(selectname).selectedIndex = 0;
 }
}
 
function kb_handler(evt) {
 var rte = evt.target.id;
 
 //contributed by Anti Veeranna (thanks Anti!)
 if (evt.ctrlKey) {
  var key = String.fromCharCode(evt.charCode).toLowerCase();
  var cmd = '';
  switch (key) {
   case 'b': cmd = "gras"; break;
   case 'i': cmd = "italic"; break;
   case 'u': cmd = "souligné"; break;
  };
 
  if (cmd) {
   FormatText(rte, cmd, true);
   //evt.target.ownerDocument.execCommand(cmd, false, true);
   // stop the event bubble
   evt.preventDefault();
   evt.stopPropagation();
  }
  }
}
 
function docChanged (evt) {
 alert('changed');
}
 
function stripHTML(oldString) {
 var newString = oldString.replace(/(<([^>]+)> )/ig,"" );
 
 //replace carriage returns and line feeds
   newString = newString.replace(/\r\n/g," " );
   newString = newString.replace(/\n/g," " );
   newString = newString.replace(/\r/g," " );
 
 //trim string
 newString = trim(newString);
 
 return newString;
}
 
function trim(inputString) {
   // Removes leading and trailing spaces from the passed string. Also removes
   // consecutive spaces and replaces it with one space. If something besides
   // a string is passed in (null, custom object, etc.) then return the input.
   if (typeof inputString != "string" ) return inputString;
   var retValue = inputString;
   var ch = retValue.substring(0, 1);
 
   while (ch == " " ) { // Check for spaces at the beginning of the string
      retValue = retValue.substring(1, retValue.length);
      ch = retValue.substring(0, 1);
   }
   ch = retValue.substring(retValue.length-1, retValue.length);
 
   while (ch == " " ) { // Check for spaces at the end of the string
      retValue = retValue.substring(0, retValue.length-1);
      ch = retValue.substring(retValue.length-1, retValue.length);
   }
 
 // Note that there are two spaces in the string - look for multiple spaces within the string
   while (retValue.indexOf("  " ) != -1) {
  // Again, there are two spaces in each of the strings
      retValue = retValue.substring(0, retValue.indexOf("  " )) + retValue.substring(retValue.indexOf("  " )+1, retValue.length);
   }
   return retValue; // Return the trimmed string back to the user
}


 
ou celle-ci en php :  
 

Citation :

<?
function affichage_thumb($resultat,$debut,$total,$mode) {
 
 global $imageparpage ;
 
  echo '<table width="90%" border = "0\" cellspacing="4" align="center" class="BlogNote">';
 $i = 0;
 $j = 0 ;
 $cpt = 0 ;
 if (mysql_num_rows($resultat) > 0)
  {
 while ($ligne = mysql_fetch_array($resultat))  
 {  
  //affichage des miniatures
  if($j == 0) { echo '<tr>'; }
  $i++;
  $j++;
  $image = substr($ligne["nom_photo"],0,strlen($ligne["nom_photo"])-4);
  switch ($mode)
   {
   case 1 :
   printf("
   <td align=\"center\" class=\"pointille\" height=\"100%s\">
   <table border=\"0\" class=\"BlogNote\"  height=\"100%s\" width=\"100%s\">
   <tr><td align=\"center\"  height=\"100%s\"><a href=\"?id=%s\"><img src = \"%s/magalerie/low/%s\" border=\"0\"  alt=\"%s\"></a></td></tr>
   <tr><td>
   Nom : <b>%s</b> <br>Taille :<b> %s Ko</b></td></tr>
   <tr><td align=\"right\"> <a href=\"galerie.php?action=del&nom=%s\"  onclick=\"return confirmdel()\";> <img src=\"images/trash.gif\" border=\"0\"> </a></td></tr>
   </table>
   </td>",
   "%","%","%","%",
   $ligne["nom_photo"],$GLOBALS["root"],$ligne["nom_photo"],$ligne["comm_photo"],$ligne["nom_photo"],filesize("./../magalerie/".$ligne["nom_photo"])*0.001,$ligne["nom_photo"]);
   break ;
   case 2 :
   printf("<td align=\"center\" class=\"pointille\"><a href=\"?id=%s\"> <img src = \"%s/magalerie/low/%s\" border=\"0\"   alt=\"%s\" ></a><br><span class=\"impair\">Nom : <b>%s</b> </span><br><span class=\"pair\">Taille :<b> %s Ko</b></span></td>",$ligne["nom_photo"],$GLOBALS["root"],$ligne["nom_photo"],$ligne["comm_photo"],$ligne["nom_photo"],filesize("../magalerie/".$ligne["nom_photo"])*0.001);    
   break ;
   }
 if($j == 3) { echo '</tr>'; $j = 0;}
 
   
 }
 echo "</table>";
 
 //positionnement des pages
 
 if (($debut == 0)&&(($debut + $imageparpage)<$total))
  {
  printf("<div align=\"center\" class=\"index\"><a href=\"?debut=%s\">Suivante</a> >></div><br>",$debut+$imageparpage);
  }
  else if ((($debut-$imageparpage) >= 0 )&&(($debut + $imageparpage) < $total ))
   {
   printf("<div align=\"center\" class=\"index\"><< <a href=\"?debut=%s\">Précedente</a> || <a href=\"?debut=%s\">Suivante</a> >></div><br>",$debut-$imageparpage,$debut+$imageparpage);
   }
   else if(($debut-$imageparpage) >= 0)
   {
   printf("<div align=\"center\" class=\"index\"><< <a href=\"?debut=%s\">Précedente</a></div><br>",$debut-$imageparpage);
   }
 echo '<table width="90%" class="BlogCorpsColor" align="center">
  <tr align="right">  
    <td><img src="images/fleche_d.gif"> <b>'.statistique($GLOBALS['suff_table'].'photo').'</b> photo(s) au total</td>
  </tr>
</table>';
 }
 else
 {
 print("<br><br><div align=\"center\"><em>Votre galerie est vide, <a href=\"ajout_image.php\" target=\"droite\">cliquez ici </a>pour ajouter des photos</em></div> <br><br><br><br>" );
 }
}
 
 
 
function redim_les_nimages($image,$taille,$chemin) {
   //changement de repertoire
   $typ = $_FILES['fich']['type'];
   chdir($chemin);
   //creation de l image a partir de celle existante
   if (($typ == "image/pjpeg" )||($typ == "image/jpeg" ))
    {
    $im = imagecreatefromjpeg($image);
    $i = 1 ;
    }
    else if ($typ == "image/gif" )
      {
      $im = imagecreatefromgif($image);
      $i = 2 ;
      }
      else if (($typ == "image/x-png" )||($typ == "image/png" ))
         {
         $im = imagecreatefrompng($image);
         $i = 3 ;
         }
     
   //calcul de la taille
   $new_l = $taille ;
   $new_h = ($taille *  imagesy($im))/ imagesx($im) ;
   //creation d une image vide
   $dst_img = ImageCreate($new_l,$new_h);
   //redimensionnement
   imagecopyresized($dst_img,$im,0,0,0,0,$new_l,$new_h,imagesx($im),imagesy($im));
   //creation du fichier image redimensionné  
   switch($i)
    {
    case 1 :
    imagejpeg($dst_img,"low/".$image,55);
    break ;
    case 2 :
    imagegif($dst_img,"low/".$image,55); //marche une fois sur deux, cette sequence n'est jamais executée
    break ; // y a une couille avec la librairie GD faut aller sur la page http://fr.php.net/manual/fr/function.imagegif.php pour plus d info
    case 3 :
    imagepng($dst_img,"low/".$image,55);
    break ;
    }
 
   //liberation du flux
   Imagedestroy($im);
}
 
function donne_moi_son_extension()
 {
 $typ = $_FILES['fich']['type'];
     //chargement de l extension en fonction du mime type de la nimage  !! je sui cantant !
     if (($typ == "image/pjpeg" )||($typ == "image/jpeg" ))
      {
      $ext = ".jpg" ;
      }
      else if ($typ == "image/gif" )
        {
        $ext = ".gif" ;
        }
        else if (($typ == "image/x-png" )||($typ == "image/png" ))
         {
         $ext = ".png" ;
         }  
 return $ext ;
 }
 
function vue_image($deb,$nb)  
   {
   $resultat = sql_query("select * from ".$GLOBALS["suff_table"]."photo order by id_photo desc limit $deb, $nb" );
   return $resultat ;
   }
   
function dismoisicetteimageexiste($img)
{
  $resultat = sql_query('select id_photo from '.$GLOBALS['suff_table'].'photo where nom_photo = "'.$img.'"' );
  if (mysql_num_rows($resultat) > 0)
   {  
   return true;
   }
   else
   {
   return false ;
   }
}    
?>


 
Mais je n'en suis pas sur autrement voici l'adresse du script : http://www.comscripts.com/jump.php [...] pt&id=1582
 
Merci de m'aider car ça fait plusieurs mois maintenant que je cherche seul ou sur internet et que je ne trouve pas.

Reply

Marsh Posté le 26-04-2006 à 13:46:54   

Reply

Marsh Posté le 26-04-2006 à 14:55:46    

en principe personne ne t'aideras à corriger un tel code, surtout celui codé par un autre... cf charte

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed