Bonjour à tous,
C'est sans doute une question bête mais bon je me lance !
A partir d'un fichier csv (facile à mettre à jour), je créé une page php qui génère un tableau. Dans le fichier csv, il y a des liens vers d'autres pages internet que je veux mettre en lien avec la balise <a href=lien>. Mon problème est que les liens sont longs et que la commande echo coupe mon lien en y insérant des balises td et tr ce qui les rend inopérants.
Quand j'ouvre le code source de ma page générée, mon lien se retrouve de la façon suivante :
J'ai tenté d'insérer des largeurs dans la balise td sans résultat, je pense que c'est la commande echo qui génère cette erreur mais je ne comprends pas comment éviter ce problème ?
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 <a href="https://longuelonguelonguelonguelonguelonguelonguelonguelonguelonguelongueadres</td></tr> <tr><td>se">Lien</a>
Vous remerciant par avance
Le fichier csv
la page php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2MARQUE;LIEN Supermarque;<a href="https://longuelonguelonguelonguelonguelonguelonguelonguelonguelonguelongueadresse">Lien</a>
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62 <html> <meta charset="utf-8"> <title>Marques</title> <head> </head> <body> <h1>Liste des marques</h1> <h2>Selectionner les marques</h2> <form method="post"> <select id="av_marque" name="pn_marque"> <option selected="selecte">Selectionner la marque</option> <?php $marq_marque=array("Supermarque"); foreach($marq_marque as $value){ ?> <option value="<?php echo $value; ?>"><?php echo $value; ?></option> <?php } ?> </select></label> <input type="submit" value="Select" name="select"> </form></br> </body> <?php // Définition du nom de fichier $nomfichier = "marques_liste2.csv"; if (file_exists($nomfichier)) { $file_to_read = fopen($nomfichier, 'r'); if($file_to_read !== FALSE){ echo "<table>\n"; while(($data = fgetcsv($file_to_read, 100, ';')) !== FALSE){ echo "<tr>"; for($i = 0; $i < count($data); $i++) { if (isset($_POST["select"])) { $pn_marq=$_POST["pn_marque"]; if ($data[0] == $pn_marq) { echo "<td>".$data[$i]."</td>"; } } else { echo "<td>".$data[$i]."</td>"; } } echo "</tr>\n"; } echo "</table>\n"; fclose($file_to_read); } echo "<br>"; } else { echo "Le fichier $nomfichier n'existe pas"; } ?> </html>
Partager