Bonjour,
J'ai une table qui comporte un champ de type longtext et lorsque je veux insérer un lien hypertexte, le lien ne se fait paspourquoi?
Comment dois-je faire pour que ce lien fonctionne? merci
Françoise
Bonjour,
J'ai une table qui comporte un champ de type longtext et lorsque je veux insérer un lien hypertexte, le lien ne se fait paspourquoi?
Comment dois-je faire pour que ce lien fonctionne? merci
Françoise
Un lien???
Tu ne peux pas enregistrer un lien comme tel dans MySQL, seulement du texte qui représente une URL que tu utilises dans ton programme.
Bonjour Effick,
Je dois dire que j'insère des images de dessins ou de peintures et ensuite un commentaire sur cette image. Comme ceci :
Victoria Prischedko
http://prischedko.de/
Cliquez sur l'image pour l'agrandir
N'y a-t-il vraiment aucun moyen que ce lien devienne actif dans Mysql et pourquoi ?
Je trouve cela vraiment bizarre que l'on ne puisse pas ajouter une adresse hypertexte![]()
Françoise
comment affiches-tu tes images ?
Je les mets directement dans la base de mysql
Voici la table de depart:
Et mon code php pour ajouter l'image et le commentaire est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 CREATE TABLE `image` ( `id` int(11) NOT NULL auto_increment, `nomimage` varchar(100) NOT NULL default '', `date` datetime NOT NULL default '0000-00-00 00:00:00', `commentaire` longtext, `reference` varchar(250) NOT NULL default '', `groupe` longtext NOT NULL, `nb` int(6) NOT NULL default '0', PRIMARY KEY (`id`), UNIQUE KEY `ImageIdIndex` (`id`) ) TYPE=MyISAM;
Alors ! j'essaie de mettre un lien hypertexte dans le commentaire et cela ne fonctionne pas .....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 echo "<img src='./image/".$im_data['nomrep']."/petit/".$im_data['nomimage'].".jpg'"; echo " border=2 style=\"border-color:000000\" alt='".htmlspecialchars($im_data['commentaire'])."'![]()
Françoise
Si ton commentaire est comme ça : Allez voir ce site <a href=http://www.google.fr>http://www.google.fr</a>, il suffit que tu enlèves ton htmlspecialchars qui transforme les < et >.
je pense que ta référence n'est vraiment pas bonnedésolée
Et si je retire le .htmlspecialchars je n'ai plus rien du tout
Même pas les images![]()
il faut quand même que tu gardes ta donnée !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 echo " border=2 style=\"border-color:000000\" alt='".$im_data['commentaire']."'
???Envoyé par Francoise*
Heu, je viens de lire ton code d'affichage d'un peu plus près, il va falloir quelques explications supplémentaires...
Le ALT (ce que tu appelles commentaire) d'une image ne porte jamais de lien. C'est l'image elle-même qui peut être incluse dans un lien. Le modèle en HTML est celui-la :
Cela veut dire que dans ta base MySQL, l'adresse du lien doit être dans une autre colonne que le commentaire (appelons-la par exemple lien).
Code : Sélectionner tout - Visualiser dans une fenêtre à part <A HREF=http://www.google.com><IMG SRC=google.jpg ALT="C'est Google !"></A>
Ton code PHP devient qqch comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 echo "<A href=$im_data[lien]> <img src='./image/$im_data[nomrep]/petit/$im_data[nomimage].jpg' border=2 style='border-color: black' alt='".htmlspecialchars($im_data['commentaire']).></A>" ;
Et quel type (varchar, longtext, etc...) je donne à ce champ nommé "lien" dans Mysql ?
Françoise
bah c'est du texte, de taille variable mais pas trop long, donc un VARCHAR(255) devrait être parfait.
Je ne comprends pas du tout comment tu fonctionne Françoise. Peut-être aurais-tu besoin de réviser les concepts de base de données?
On va commencer par réviser l'architecture 3-tier :
MySQL stocke les données et ne s'occupe pas de l'affichage. Une adresse hypertexte est une donnée textuelle comme une autre, mais ce n'est pas un lien.Envoyé par francoise*
L'affichage est effectué par ton navigateur web, selon la description faite par le code HTML de la page. Cet affichage peut comprendre du texte mis en forme, des images, des tableaux, etc., et des liens hypertexte, pointant vers une adresse (URL) précise.
Le lien entre MySQL et les pages HTML est effectué par PHP. C'est lui qui interroge la base de données et traduit les résultats en code HTML.
On a donc une architecture à 3 niveaux (en anglais, 3-tier architecture), avec trois langages différents :
- devant l'utilisateur, le niveau présentation : le navigateur web, qui lit interprète le code HTML
- au milieu, le niveau applicatif : le serveur web avec son moteur PHP
- en back-office, la base de données, qui assure la persistance de l'information et se manipule par du code SQl.
Bonjour,Envoyé par efficks
Efficks, peut-être devrais-tu être un peu plus tolérant envers les personnes qui ne sont pas aussi expert que toiJ'essaie juste d'apprendre. Si toutes les personnes qui viennent ici seraient aussi expert que toi, ce forum n'aurait aucune raison d'être.
![]()
Antoun, merci pour ton aide grâce à tes conseils, j'ai réussi à faire les liens vers les sites des artistes![]()
Je vous souhaite à tous une bonne fête de Noël![]()
Françoise
Partager