
<?php
function link_extract($str)
{
preg_match("(<A HREF=\\\"(.*)\\\" ADD_DATE=\\\"(.*)\\\" ICON=\\\"(.*)\\\"? LAST_CHARSET=\\\"(.*)\\\" ID=\\\"(.*)\\\"+>(.*)</A>)\", $string, $output, PREG_OFFSET_CAPTURE);
return($out);
}
$tab=file(\'bookmarks.html\');
for($i=0; $i<count($tab); $i++){
$tab[$i]=str_replace(\" \", \"\", $tab[$i]);
$tab[$i]=str_replace(\"\\n\", \"\", $tab[$i]);
if($tab[$i]!=\"\"){
if(eregi(\'<dl>\', $tab[$i])){
echo \'<ul>
\';
}elseif(eregi(\'</dl>\', $tab[$i])){
echo \'</ul>
\';
}elseif(eregi(\'<dt>\', $tab[$i])){
$pattern = \'|<[^>]+>(.*)</[^>]+>|U\';
preg_match($pattern, $tab[$i], $out, PREG_OFFSET_CAPTURE, 3);
$link = link_extract($out[0][0]);
if($link[0][0]!=\"\"){
echo \'
<li><a href=\"\'.htmlentities($link[1][0], ENT_QUOTES).\'\">\'.htmlentities($link[5][0], ENT_QUOTES).\'</a></li>\';
}else{
echo \'
<li><b>\'.htmlentities($out[1][0], ENT_QUOTES).\'</b></li>\';
}
}
}
}
?>
preg_match(\"(<A HREF=\"(.*)\" ADD_DATE=\"(.*)\" ICON=\"(.*)\"? LAST_CHARSET=\"(.*)\" ID=\"(.*)\"+>(.*)</A>)\", $string, $output, PREG_OFFSET_CAPTURE)
mais je regarde ça tout à l\'heure, enfin si j\'arrive à piger qlq chose
j\'avoue que je suis un peu largué par ton code. 
<?php
function link_extract($str)
{
preg_match("(<A HREF=\\\"(.*)\\\"+>(.*)</A>)\", $str, $out, PREG_OFFSET_CAPTURE);
return($out);
}
function sort_array($temp) {
foreach($temp as $num => $texte){
$texte=str_replace(\' \', \'\', $texte); $texte=str_replace(\'=\', \'\', $texte);
$newtemp[$texte]=$temp[($num+1)];
}
return $newtemp;
}
function change_date($mktimedate){
$newdate=date(\"d-m-Y\", $mktimedate);
return $newdate;
}
$tab=file(\'bookmarks.html\');
foreach($tab as $clef=>$valeur){
$valeur=str_replace(\" \", \"\", $valeur);
$valeur=str_replace(\"\\n\", \"\", $valeur);
if($valeur!=\"\"){
if(eregi(\'<dl>\', $valeur)){
echo \'<ul>\'.\"\\n\";
}elseif(eregi(\'</dl>\', $valeur)){
echo \'</ul>\'.\"\\n\\n\";
}elseif(eregi(\'<dt>\', $valeur)){
$pattern = \'|<[^>]+>(.*)</[^>]+>|U\';
preg_match($pattern, $valeur, $out, PREG_OFFSET_CAPTURE, 3);
$link = link_extract($out[0][0]);
$temp=split(\'\"\',$link[1][0]);
$newtemp=sort_array($temp);
if($link[2][0]!=\"\"){
echo \'<li><a href=\"\'.htmlentities($temp[0], ENT_QUOTES).\'\" title=\"Ajouté le : \'.change_date($newtemp [\'ADD_DATE\']).\'\">\'.htmlentities($link[2][0], ENT_QUOTES).\'</a> (img : \'.$newtemp[\'ICON\'].\')</li>\'.\"\\n\";
}else{
echo \'<li><b>\'.htmlentities($out[1][0], ENT_QUOTES).\'</b></li>\'.\"\\n\";
}
}
}
}
?>

<?php
function cleanurl($var){
$var=strtolower($var);
$var=str_replace(" \",\"-\",$var);
$var=str_replace(\"--\",\"-\",$var);
$var=eregi_replace(\"[^a-z0-9\\-]\",\"\",$var);
return $var;
}
function base64_to_jpeg( $inputfile, $outputfile ) {
$fp = fopen(\'icons/\'.$outputfile, \"wb\" );
fwrite( $fp, base64_decode( $inputfile ) );
fclose( $fp );
return( $outputfile );
}
function link_extract($str)
{
preg_match(\"(<A HREF=\\\"(.*)\\\"+>(.*)</A>)\", $str, $out, PREG_OFFSET_CAPTURE);
return($out);
}
function sort_array($temp) {
foreach($temp as $num => $texte){
$texte=str_replace(\' \', \'\', $texte); $texte=str_replace(\'=\', \'\', $texte);
$newtemp[$texte]=$temp[($num+1)];
}
return $newtemp;
}
function change_date($mktimedate){
$newdate=date(\"d-m-Y\", $mktimedate);
return $newdate;
}
$tab=file(\'bookmarks.html\');
foreach($tab as $clef=>$valeur){
$valeur=str_replace(\" \", \"\", $valeur);
$valeur=str_replace(\"\\n\", \"\", $valeur);
if($valeur!=\"\"){
if(eregi(\'<dl>\', $valeur)){
echo \'<ul>\'.\"\\n\";
}elseif(eregi(\'</dl>\', $valeur)){
echo \'</ul>\'.\"\\n\\n\";
}elseif(eregi(\'<dt>\', $valeur)){
$pattern = \'|<[^>]+>(.*)</[^>]+>|U\';
preg_match($pattern, $valeur, $out, PREG_OFFSET_CAPTURE, 3);
$link = link_extract($out[0][0]);
$temp=split(\'\"\',$link[1][0]);
$newtemp=sort_array($temp);
if($link[2][0]!=\"\"){
if(!empty($newtemp[\'ICON\']) AND !file_exists(\'icons/\'.cleanurl($temp[0]).\'.jpg\')){
$newtemp[\'ICON\']=str_replace(\'data:image/x-icon;base64,\',\'\',$newtemp[\'ICON\']);
base64_to_jpeg($newtemp[\'ICON\'], cleanurl($temp[0]).\'.jpg\');
}
if(file_exists(\'icons/\'.cleanurl($temp[0]).\'.jpg\')){
$imageUrl=cleanurl($temp[0]).\'.jpg\';
}else{
$imageUrl=\'default.jpg\';
}
echo \'<li><img width=\"16\" src=\"icons/\'.$imageUrl.\'\" /> <a href=\"\'.htmlentities($temp[0], ENT_QUOTES).\' \" title=\"Ajouté le : \'.change_date($newtemp[\'ADD_DATE\']).\'\">\'.htmlentities($link[2][0], ENT_QUOTES).\'</a></li>\'.\"\\n\";
}else{
echo \'<li><b>\'.htmlentities($out[1][0], ENT_QUOTES).\'</b></li>\'.\"\\n\";
}
}
}
}
?>
<!DOCTYPE NETSCAPE-Bookmark-file-1>
<!-- This is an automatically generated file.
It will be read and overwritten.
DO NOT EDIT! -->
<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset=UTF-8\">
<TITLE>Bookmarks</TITLE>
<H1>Bookmarks</H1>
<DL><p>
<DT><H3 ADD_DATE=\"961112773\" LAST_MODIFIED=\"1111737763\" PERSONAL_TOOLBAR_FOLDER=\"true\" ID=\"NC:PersonalToolbarFolder\">Barre Person nelle</H3>
<DL><p>
<DT><A HREF=\"http://www.mozilla.org/\" ADD_DATE=\"961099870\" LAST_VISIT=\"1122810587\" LAST_MODIFIED=\"1028734564\"&nbs p;ICON=\"http://www.mozilla.org/images/mozilla-16.png\" LAST_CHARSET=\"UTF-8\" ID=\"rdf:#$vf3Cl1\">Le site Mozilla</A>
<DT><A HREF=\"http://frenchmozilla.sourceforge.net/\" ADD_DATE=\"1028728427\" LAST_VISIT=\"1122810530\" LAST_MODIFIED=\"1 028734556\" ICON=\"http://frenchmozilla.sourceforge.net/images/webicon.png\" LAST_CHARSET=\"ISO-8859-1\" ID=\"rdf:#$wf3Cl1\">Mozilla en français</A>
<DT><A HREF=\"http://c.asselin.free.fr/french/moteurs.htm\" ADD_DATE=\"1111737717\" LAST_VISIT=\"1123853246\" LAST_CHARSE T=\"ISO-8859-1\" ID=\"rdf:#$DQv+k\">Moteurs de recherche français et internationaux</A>
<DT><A HREF=\"http://www.msn.com/\" ADD_DATE=\"1117754424\" LAST_VISIT=\"1123919226\" LAST_CHARSET=\"UTF-8\" ID=\"rd f:#$kOqjm3\">Welcome to MSN.com</A>
<DT><A HREF=\"http://www.system-tic.net/orb/index.php\" ADD_DATE=\"1117923251\" LAST_VISIT=\"1118000158\" LAST_CHARSET=\" ISO-8859-1\" ID=\"rdf:#$R7wam\">Votre villa en pierre dans le Languedoc (Hérault)</A>
</DL><p>
<HR>

Nous - Plan du site - Informations légale - Contact - © Graphiks.net