Bonjour à tous,

Je fais de nouveau appel à vous !

J'ai une page d'affichage des résultats d'une recherche de documents par nom de machine. Tout s'affiche très bien excepté le chemin d'accès vers les fichiers (liendoc).

Dans Access, le champ liendoc est de type "lien hypertexte". Problème : PHP affiche le lien en double.

J'ai une fonction dans ma page de connexion qui permet de remplacer les # qui s'affichent en trop mais je ne vois pas comment supprimer le lien en double.

Code d'affichage des champs :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
//Requête
    $sql2="SELECT nomdoc , typedoc , formatdoc , datedoc , languedoc , themedoc , resumedoc , liendoc FROM machines , documents , documents_machines 
    WHERE machines.idmachine = documents_machines.idmachine AND documents_machines.iddoc = documents.iddoc AND nommachine LIKE '%".$Mot."%' ORDER BY nomdoc";
    $valeur2 = odbc_do($cnx , $sql2) or die( odbc_error() );
 
    // On teste s'il y a des résultats pour cette requete
    if (!odbc_fetch_row($valeur2)){
      echo "<h2>Aucun document ne correspond à votre recherche</h2><p>";
    }
    else {
      // On réinitialise la requete apres la commande odbc_fetch_row
      $valeur2 = odbc_do($cnx , $sql2) or die( odbc_error() );
 
      echo "<TABLE border=1>";
	  // On utilise la fonction presente dans connexion_bd.php
      aff_ligne("Nom du document",$valeur2,'nomdoc');
      aff_ligne("Type",$valeur2,'typedoc');
      aff_ligne("Format",$valeur2,'formatdoc');
      aff_ligne("Date",$valeur2,'datedoc');
      aff_ligne("Langue",$valeur2,'languedoc');
      aff_ligne("Thème",$valeur2,'themedoc');
      aff_ligne("Résumé",$valeur2,'resumedoc');
      aff_ligne("Lien",$valeur2,'liendoc');
		  echo "</TABLE>";
    }
Code qui supprime le # :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
if (strstr($res, "\\serveur") == true) { 
        $lien_document=str_replace("#","",$res);
        echo "<TD align=center width=150> <a href=".$lien_document."> $lien_document </a> </TD>";
        continue;
      }
Résultat affiché :

Lien
\\serveur\dossier1\dossier2\dossier3\fichier.ext\\serveur\dossier1\dossier2\dossier3\fichier.ext


Je précise que j'utilise les mêmes fonctions d'affichage et de suppression des # pour afficher un lien hypertexte de type http://site/ et que ça fonctionne.

J'espère que vous pourrez m'aider ! Merci.