probleme pour inserer un lien dans la bdd???

Eléphant du PHP | 181 Messages

19 mai 2005, 09:39

voila, j'ai un petit probleme,

je dois inserer un lien dans ma base de donnees.

pour cela j'utilise un input file mais le probleme c que l'insertion se fait sans les \. alors j'ai rajouter la fonction addslashes. la c bon ca a insere les \ mais le lien ne fonctionne pas du tout car il devrait etre plutot /.

alors j'ai utilise la fonction str_replace('\"', "/", "$attach1"). et la rebolote ya rien....

est-ce que qqn pourrait m'aider svp???? merci d'avance.

PS j'espere que j'ai reussi a me faire comprendre. des fois c difficile de marque par ecit ce ke l'on pense :wink:
Modifié en dernier par ruly le 19 mai 2005, 10:11, modifié 1 fois.

Mammouth du PHP | 19672 Messages

19 mai 2005, 09:41

SAlut,
si tu insères des données en utilisant addslashes(), lorsque tu les récupère, il faut effectuer l'opération inverse avec stripslashes() pour avoir la chaine originale.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 09:47

mais le probleme si je ne me trompe pas c ke le chemin c'ecrit dans l'input fiel:

C:\Program Files\EasyPHP1-7\www\blabla.txt par exemple.

kan j'utilise addslashe c'est inserer tel que ldans la base... mais pour qu'un lien marche il faut pas ke le chemin soir plutot comme ca:
C:/Program Files/EasyPHP1-7/www/blabla.txt ????

Mammouth du PHP | 19672 Messages

19 mai 2005, 09:51

Ça dépend de quel type de lien tu veux parler: soit une adresse de type exploration de fichier comme ce que tu nous montres, soit une adresse http auquel cas il vaudrait mieux remplacer "C:/Program Files/EasyPHP1-7/www/" par "http://localhost/" et ce type de lien sera reconnu par le système comme un lien à ouvrir avec un navigateur internet si l'extension du fichier visé est en .html, .php, .asp ou encore .jsp. Si c'est un .txt, il y a des chances pour qu'il l'affiche aussi dans le navigateur, mais un .doc sera ouvert dans ton éditeur de texte habituel, MS-Word ou OO.org.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 10:00

je vais explike je crois ke ca sera plus simple :wink:

en tout cas merci de repondre aussi vite c cool.

je dois insere dans ma base de donnees le chemin pour acceder au facture des fournisseurs.
ces fichier normalement sont tjrs dans le meme repertoire mais mon chef veut un browse pour si jamais.

apres j'ai une fenetre avec un listing des facture et le chemin pour le rouvrire. soit en excel soit en word soit en jpeg car yaura des scan des factures.

donc mon probleme c que dans le listing des factures le chemin sort sous cette forme:

C:\Program Files\EasyPHP1-7\www\blabla.txt par exemple...

mais mon lien ne marche pas car le line est sous cette forme:

file:///C:/Program%20Files/EasyPHP1-7/www/toto.txt

et quant je click dessus rien ne se passe.

je sais pas comment remedier a ce probleme???

Mammouth du PHP | 19672 Messages

19 mai 2005, 10:14

Il faut que ton lien soit du type :

Code : Tout sélectionner

<a href="file:///C:/Program%20Files/EasyPHP1-7/www/toto.txt" class="" title="">toto.txt</a>
Je viens de faire des tests avec des adresses sur ma machine et j'affiche bien le fichier voulu. Alors si ton système ne fonctionne pas, c'est qu'il y a des erreurs quelque part.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 10:32

mais mon lien je le recupere de la base de donnee avec une variable????

Code : Tout sélectionner

<a href="<?php echo $data['facture_attach3'];?>" target="_blank"><?php echo $data['facture_attach3'];?></a>
moi j'ai fais comme ca.... et kan je click dessus rien ne se passe :(

Mammouth du PHP | 19672 Messages

19 mai 2005, 10:35

fais afficher la source de ta page pour vérifier de quoi a l'air l'url qui est dans le href de ta balise <a>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 10:40

Code : Tout sélectionner

<a href="C:\Program Files\EasyPHP1-7\www\TAG_IT\application\img\Factures\G-FTSL.pdf" target="_blank">C:\Program Files\EasyPHP1-7\www\TAG_IT\application\img\Factures\G-FTSL.pdf</a>
je sais pas si c ca que tu veux??? j'ai pas tres bien compris.. sorry

Mammouth du PHP | 19672 Messages

19 mai 2005, 10:47

Ben là, je vois pas: je viens de faire un essai avec ce type d'adresse et ça fonctionne: alors pourquoi ça ne marche pas sur ton système, je sais pas. As-tu vérifié via l'explorateur que le chemin vers le fichier correspond bien ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 10:54

alors la je comrend pas non plus.

quand je fait un copy short cut du lien et je le met dans une new fenetre ca marche.... mais en clickant dessus rien ne se passe

:roll: :roll: :roll: :roll: :roll:

bizarre vous avez dit bizarre comme c bizarre

:?

Mammouth du PHP | 19672 Messages

19 mai 2005, 11:18

Essaye en enlevant le [target="_blank"], peut-être que ton navigateur bloque l'ouverture de nouvelles fenêtres ?
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 181 Messages

19 mai 2005, 11:24

Essaye en enlevant le [target="_blank"], peut-être que ton navigateur bloque l'ouverture de nouvelles fenêtres ?
marche pas non plus... je sais pas comment contourner ce probleme... ca m'enerve ](*,)

Eléphant du PHP | 181 Messages

20 mai 2005, 09:53

j'ai toruve... enfin enfin :lol:

un truc tout con mais fallait y penser ... aie 2 jour dessus alors que c'etait un truc tout simple....

le web n'aime pas les espaces...

<a href="C:\Program Files\EasyPHP1-7\www\TAG_IT\application\img\Factures\G-FTSL.pdf" target="_blank">C:\Program Files\EasyPHP1-7\www\TAG_IT\application\img\Factures\G-FTSL.pdf</a>

c'etait pour ca que ca marchait pas.... :wink:

merci bcp pour ton aide en tout cas.... bon weekend