Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/12/2010, 15h09   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2008
Messages : 41
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : décembre 2008
Messages : 41
Points : 13
Points : 13
Par défaut Problème expression régulière

Bonjour à tous,
Voilà, j'ai créé une galerie de photos à partir d'une base de données, laquelle affiche des vignettes pour les jpg, png et gif.
En revanche, pour les pdf, je souhaite afficher le logo Acrobat, en lieu et place de la vignette (que je n'ai pas réussi à générer automatiquement).
Pour cela, j'ai posé une condition qui demande si le fichier est un ".pdf", dans ce cas on affiche le logo, sinon, on affiche la vignette correspondante au fichier.
Voici mon code :
Code :
1
2
3
4
5
6
7
8
9
10
11
<?php
$pdf = "pdf$";
<td class="cadre"><img src="<?php if ($donnees['up_finalname'] == $pdf)
{ 
echo '/visuels/mini/pdf-logo.png';
}
else 
{ 
echo '/visuels/mini/' .$donnees['up_finalname'] ;
}  ?> " width="200px" /> </td>  
?>
j'ai lu que pour obtenir la fin d'une chaine de caractères, il fallait utiliser fin$, mais je dois mal l'utiliser, car cela ne fonctionne pas.
Auriez-vous une idée ?
Merci pour votre aide,
MarieNum est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 15h19   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tu as la fonction pathinfo()

Code :
1
2
3
$extension = pathinfo($donnees['up_finalname'], PATHINFO_EXTENSION);
if ($extension == "pdf") {
...
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 15h20   #3
Membre éclairé
 
Inscription : août 2007
Messages : 360
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 360
Points : 334
Points : 334
Bonjour,

Cette solution marche si il n'y a jamais de "point" dans le nom du fichier :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
 
<?php
 
$parts = explode('.', $donnees['up_finalname']);
$extension = $parts[1];
 
$visuel = 'pdf-logo.png';
if ('pdf' !== $extension)
{ 
  $visuel = $donnees['up_finalname'];
}  
 
?>
 
?>
 
<td class="cadre">
  <img alt="" src="<?php echo '/visuels/mini/' .$visuel; ?>" style="width:200px;" />
</td>
Cordialement,

Mathieu
mathieu44800 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/12/2010, 15h32   #4
Modérateur
 
Avatar de Bisûnûrs
 
Josselin
Développeur Web
Inscription : janvier 2004
Messages : 9 050
Détails du profil
Informations personnelles :
Nom : Josselin
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2004
Messages : 9 050
Points : 12 181
Points : 12 181
Citation:
Envoyé par mathieu44800 Voir le message
Cette solution marche si il n'y a jamais de "point" dans le nom du fichier
Dans ce cas là autant dynamiser le "1" pour faire en sorte que ça marche dans tous les cas :
Code :
$extension = $parts[count($parts)-1];
Bisûnûrs est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 29/12/2010, 15h34   #5
Membre éclairé
 
Inscription : août 2007
Messages : 360
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 360
Points : 334
Points : 334
Y a de l'idée chez les bisounours !!!

Merci du complément...
mathieu44800 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/12/2010, 16h45   #6
Candidat au titre de Membre du Club
 
Inscription : décembre 2008
Messages : 41
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : décembre 2008
Messages : 41
Points : 13
Points : 13
Alors là, chapeau bas !
C'est là que je me dis que j'ai encore beaucoup de progrès à faire...
Merci beaucoup, ça fonctionne super
Très bonne fin de journée,
et bonnes fêtes à tous !
MarieNum est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h15.


 
 
 
 
Partenaires

Hébergement Web