Posez votre question Signaler

Encoder ISO-8859-1

powpowland 384Messages postés 3 mars 2008Date d'inscription 14 novembre 2011Dernière intervention - Dernière réponse le 5 nov. 2010 à 10:48
Bonjour,
existe-t-il un moyen d'encoder un texte avec plein d'accents en norme ISO-8859-1 ? un utilitaire PHP ? un site internet ?
parce que je me vois très mal recoder tous les caractères spéciaux en ISO-8859-1...
merci d'avance
Lire la suite 

Encoder ISO-8859-1 »

13 réponses
Réponse
+3
moins plus
tu n'aurais pas un lien un peu plus précis parce que je suis un peu perdu dans tout ce contenu...

merci
Eldest - 4 juil. 2008 à 09:28
http://www.siteduzero.com/tuto-3-4-0-un-site-dynamique-avec-php.html

Par contre va falloir que t'aprennes un peu le code, tout du moins les bases avant de te lancer dans les REGEX ... Tout est inscrit la dedans , suffit de tirer les informations a ton profit ;)
Ajouter un commentaire
Réponse
+1
moins plus
j'ai mis en place un pitit code qui a l'aire de marcher...

index.html
<form action="trad.php" method="post">

			<p>
                <label for="texte">texte à traduire :<br></label>
                <textarea name="texte" rows="20" cols="60"></textarea>
            </p>
			<p>
                <input type="reset" name="reset" value="Effacer" />
                <input type="submit" name="send" value="Envoyer" />
            </p>

</form>


trad.php
<?php
$texte=$_POST['texte'];


$texte = preg_replace('#\<b\>(.+)\</b\>#i', '<strong>$1</strong>', $texte);
$texte = preg_replace('#\à#', '&#224;', $texte);
$texte = preg_replace('#\ç#', '&#231;', $texte);
$texte = preg_replace('#\è#', '&#232;;', $texte);
$texte = preg_replace('#\é#', '&#233;', $texte);
$texte = preg_replace('#\ê#', '&#234;', $texte);
$texte = preg_replace('#\ô#', '&#244;', $texte);
$texte = preg_replace('#\ù#', '&#249;', $texte);
$texte = preg_replace('#\!#', '&#33;', $texte);
$texte = preg_replace('#\"#', '&#34;', $texte);
$texte = preg_replace('#\'#', '&#39;', $texte);
$texte = preg_replace('#\<#', '<', $texte);

echo "Texte à traduire :<br><br>";
echo $texte;
/*echo "Texte traduit : <br><br>";
echo '<textarea name="texte" rows="20" cols="60">';echo $texte; echo'</textarea>';*/

?>
<br>
<a href="index.html">Traduire un autre texte</a>


le seul truc que je n'arrive pas à faire c'est l'affichage en brut du code... il s'affiche qu'en formaté par le navigateur... si quelqu'un peut maider ???
Eldest - 4 juil. 2008 à 13:32
pour le faire marcher, il te faut le mettre sur un serveur web ... Ou alors en local tu peux télécharger Esay PHP ou WAMP (LAMP sous LINUX)
Ajouter un commentaire
Réponse
+0
moins plus
en php tu peux le faire, via les REGEX ...

je te renvoie à http://siteduzero.com qui explique tout correctement ;)
Ajouter un commentaire
Réponse
+0
moins plus
merci beaucoup

sinon il n'existe pas d'encoder déjà tout fait quelque part sur le net??
Ajouter un commentaire
Réponse
+0
moins plus
il y a bien quelqu'un qui a mis en place un "traducteur" nan??
Ajouter un commentaire
Réponse
+0
moins plus
nan mais je sais pour ça je connais...

mais le truc c'est que quand je passe la variable en "echo", ça affiche
abcdef éè;ùà!

alors que je veux que ça affiche
abcdef &#233;&#232;;&#249;&#224;&#33;
Ajouter un commentaire
Réponse
+0
moins plus
voila j'ai réussi à le faire pour le ISO et l'HTML... avec affichage des codes sources...

voici les codes... il reste juste un truc d'un peu génant, c'est que le code source fait un peu le rebelle et sort de la page... mais bon c'est une détail...

------------------------index.php :-----------------------------
<!--by www.cyrilguerin.fr-->
<form action="trad.php" method="post">

			<p>
			<table>
				<tr><td><label for="choix">Coder en : </label></td>
				<td>ISO<INPUT type=radio name="choix" value="iso" checked="checked">
				<br>HTML<INPUT type=radio name="choix" value="html">
				<br>Les deux<INPUT type=radio name="choix" value="lesdeux"></td></tr>
				
			</table>
			</p>
			<p>
                <label for="texte">texte à coder :<br></label>
                <textarea name="texte" rows="20" cols="60"></textarea>
            </p>
			<p>
                <input type="reset" name="reset" value="Effacer" />
                <input type="submit" name="send" value="Envoyer" />
            </p>

</form>


---------------------------------------trad.php :-------------------------------------

<?php

/*by www.cyrilguerin.fr*/

$choix=$_POST['choix'];
$texte=$_POST['texte'];

function writeTextFile($fileName,$text) {

    $session = fopen($fileName,"a+");
    fputs($session,$text);
    fclose($session);
}

if ($choix == 'iso'){

$texte = preg_replace('#\à#', '&#224;', $texte);
$texte = preg_replace('#\ç#', '&#231;', $texte);
$texte = preg_replace('#\è#', '&#232;', $texte);
$texte = preg_replace('#\é#', '&#233;', $texte);
$texte = preg_replace('#\ê#', '&#234;', $texte);
$texte = preg_replace('#\ô#', '&#244;', $texte);
$texte = preg_replace('#\ù#', '&#249;', $texte);
$texte = preg_replace('#\!#', '&#33;', $texte);
$texte = preg_replace('#\"#', '&#34;', $texte);
$texte = preg_replace('#\'#', '&#39;', $texte);
$texte = preg_replace('#\<#', '&#60;', $texte);
$texte = preg_replace('#\@#', '&#64;', $texte);
$texte = preg_replace('#\€#', '&#128;', $texte);
$texte = preg_replace('#\©#', '&#169;', $texte);

echo "<u>Texte de base :</u><br><br>";
echo $texte;
echo "<br><br>";


ob_start();

$content = ob_get_contents();

writeTextFile("texteiso.php",$texte);

echo "<u>Texte codé en ISO :</u><br><br>";
highlight_file('texteiso.php');
}

else if($choix == 'html'){
$texte = preg_replace('#\<b\>(.+)\</b\>#i', '<strong>$1</strong>', $texte);
$texte = preg_replace('#\à#', '&agrave;', $texte);
$texte = preg_replace('#\ç#', '&ccedil;', $texte);
$texte = preg_replace('#\è#', '&egrave;', $texte);
$texte = preg_replace('#\é#', '&eacute;', $texte);
$texte = preg_replace('#\ê#', '&ecirc;', $texte);
$texte = preg_replace('#\ô#', '&ocirc;', $texte);
$texte = preg_replace('#\ù#', '&ugrave;', $texte);
$texte = preg_replace('#\"#', '&quot;', $texte);
$texte = preg_replace('#\<#', '<', $texte);
$texte = preg_replace('#\€#', '&euro;', $texte);
$texte = preg_replace('#\©#', '&copy;', $texte);

echo "<u>Texte de base :</u><br><br>";
echo $texte;


echo "<br><br>";


ob_start();

$content = ob_get_contents();

writeTextFile("textehtml.php",$texte);

echo "<u>Texte codé en HTML : </u><br><br>";
highlight_file('textehtml.php');
}

else if($choix == 'lesdeux'){
$textehtml = $texte;
$texteiso = $texte;

$textehtml = preg_replace('#\<b\>(.+)\</b\>#i', '<strong>$1</strong>', $textehtml);
$textehtml = preg_replace('#\à#', '&agrave;', $textehtml);
$textehtml = preg_replace('#\ç#', '&ccedil;', $textehtml);
$textehtml = preg_replace('#\è#', '&egrave;', $textehtml);
$textehtml = preg_replace('#\é#', '&eacute;', $textehtml);
$textehtml = preg_replace('#\ê#', '&ecirc;', $textehtml);
$textehtml = preg_replace('#\ô#', '&ocirc;', $textehtml);
$textehtml = preg_replace('#\ù#', '&ugrave;', $textehtml);
$textehtml = preg_replace('#\"#', '&quot;', $textehtml);
$textehtml = preg_replace('#\<#', '<', $textehtml);
$textehtml = preg_replace('#\€#', '&euro;', $textehtml);
$textehtml = preg_replace('#\©#', '&copy;', $textehtml);

echo "<u>Texte de base :</u><br><br>";
echo $textehtml;
echo "<br><br>";

ob_start();

$content = ob_get_contents();

writeTextFile("textehtml.php",$textehtml);

echo "<u>Texte codé en HTML</u> : <br><br>";
highlight_file('textehtml.php');

$texteiso = preg_replace('#\à#', '&#224;', $texteiso);
$texteiso = preg_replace('#\ç#', '&#231;', $texteiso);
$texteiso = preg_replace('#\è#', '&#232;', $texteiso);
$texteiso = preg_replace('#\é#', '&#233;', $texteiso);
$texteiso = preg_replace('#\ê#', '&#234;', $texteiso);
$texteiso = preg_replace('#\ô#', '&#244;', $texteiso);
$texteiso = preg_replace('#\ù#', '&#249;', $texteiso);
$texteiso = preg_replace('#\!#', '&#33;', $texteiso);
$texteiso = preg_replace('#\"#', '&#34;', $texteiso);
$texteiso = preg_replace('#\'#', '&#39;', $texteiso);
$texteiso = preg_replace('#\<#', '&#60;', $texteiso);
$texteiso = preg_replace('#\@#', '&#64;', $texteiso);
$texteiso = preg_replace('#\€#', '&#128;', $texteiso);
$texteiso = preg_replace('#\©#', '&#169;', $texteiso);

echo "<br><br>";

ob_start();

$content = ob_get_contents();

writeTextFile("texteiso.php",$texteiso);

echo "<u>Texte codé en ISO :</u><br><br>";
highlight_file('texteiso.php');

}
?>
<br>
<a href="index.php"><br>Traduire un autre texte</a>

<?php if (file_exists("texteiso.php")){unlink("texteiso.php");}
	  if (file_exists("textehtml.php")){unlink("textehtml.php");}?>
redploplop - 7 oct. 2010 à 14:11
tu te fait chier à faire du code et personne ne te dit merci

Alors merci sa va me servir ^^
Cédric - 5 nov. 2010 à 10:48
Super ^^
Merci beaucoup "powpowland" ton code marche impeccablement ; ^))
Ajouter un commentaire
Ce document intitulé « encoder ISO-8859-1 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook