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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
|
//Si mon url est valide :
if ($ok = 1) {
//j'edite d'abord les liens de type src :
//On compte le nombre de boucles a faire :
$nbimages = substr_count($texte,"src=");
$i = 0;
//On place le code dans une variable temporairesur laquelle on va travailler
$textetemp = $texte ;
//Tant qu'il existe des balises de type src non traitées :
while ($i < $nbimages) {
$image = "";
//On repere la position du premier src non traité
$pos = strpos($textetemp,"src=") + 4;
$char = "debut";
//Et tant que l'on ne rencontre pas un caractère indiquant la fin du champ
while ($char != " " && $char != ">" && $char != "," ) {
//On continue d'aligner les caractères récupérés
$char = substr($textetemp,$pos, 1);
if ($char != " " && $char != ">" && $char != ",") { $image .= $char; }
$pos ++ ;
}
// $image contient donc le chemin de la premire immage non traitée :
//On supprime le dernier caractère
//on remplace les caratcères génant en début et en fin de chaine (quotes ...)
$image= substr($image,0,strlen($image) - 1);
$image = str_replace("'","",$image);
$image = str_replace("\"","",$image);
$image = str_replace(">","",$image);
$image = str_replace(",","",$image);
//Si le lien ne commence pas par http://
if (substr($image,0,7) != "http://") {
// On rajoute l'adresse du site devant le lien
if (substr(trim($image),0,1) == "/") $imagenew = $fichier.trim($image); else $imagenew = $fichier."/".trim($image);
}
//Et sinon ben .. on ne remplace pas
else $imagenew = $image ;
//Et on continue la boucle
$i++;
//Si le lien a besoin d'etr mis a jour
if (substr($image,0,7) != "http://")
{
// On le modifie dans le texte temporaire et le texte final
$texte = str_replace("$image","$imagenew",$texte);
$textetemp = str_replace("$image","$imagenew",$textetemp); }
//Et on coupe tout la partie déja traitée du code du texte temporaire
$textetemp = substr($textetemp,$pos,strlen($textetemp));
}
//De meme avec les href
// Traitement des href :
//On compte le nombre de boucles a faire :
$nbliens = substr_count($texte,"href=");
$i = 0;
$textetemp = $texte ;
while ($i < $nbliens) {
$lien = "";
//On repere la position du premier src
$pos = strpos($textetemp,"href=") + 6;
$char = "debut";
while ($char != " " && $char != ">" && $char != "," ) {
$char = substr($textetemp,$pos, 1);
if ($char != " " && $char != ">" && $char != ",") { $lien .= $char; }
$pos ++ ;
}
$lien= substr($lien,0,strlen($lien) - 1);
$lien = str_replace("'","",$lien);
$lien = str_replace("\"","",$lien);
$lien = str_replace(">","",$lien);
$lien = str_replace(",","",$lien);
if (substr($lien,0,7) != "http://") {
if (substr(trim($lien),0,1) == "/") $liennew = $fichier.trim($lien); else $liennew = $fichier."/".trim($lien);
}
else $liennew = $lien ;
$i++;
if (substr($lien,0,7) != "http://")
$texte = str_replace("$lien","$liennew",$texte);
$textetemp = str_replace("$lien","$liennew",$textetemp);
$textetemp = substr($textetemp,$pos,strlen($textetemp));
}
//Et on affiche la page :
echo $texte;
} |