Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb de fonction de chaine et nom de fichier

2 réponses
Avatar
iRiS
Bonsoir à tous !

J'ai un formulaire de liens avec upload d'un logo.

Je renomme le logo pour associer la catégorie
par exemple : logo.jpg devrait devrait devenir logo_sports.jpg, hors
j'obtiens logo.jpg_sports.jpg

Comment procéder enlever ".jpg" après "logo" ou obtenir dans une variable
que "logo" et non "logo.jpg"

Voici le code :

//traitement du formulaire de modification.
if ($bouton=="ajouter"){
// définition de l'espace destiné à recevoir les fichiers
$rep="../img/";
$extension = substr($img_name, strrpos($img_name, "."));
$nvlimage = $img_name . "_lien" . $extension;
$path = $rep.$nvlimage;

merci d'avance de l'aide vous voudriez bien m'apporter
Christophe

2 réponses

Avatar
Guillaume Bouchard
iRiS wrote:

Je renomme le logo pour associer la catégorie
par exemple : logo.jpg devrait devrait devenir logo_sports.jpg, hors
j'obtiens logo.jpg_sports.jpg

Comment procéder enlever ".jpg" après "logo" ou obtenir dans une variable
que "logo" et non "logo.jpg"


strrpos et substr comme tu les as correctement utilisé dans ton script,
mais d'un autre façon :)

$img = substr($img_name,0,strrpos($img_name,'.'));

La fonction http://fr2.php.net/manual/en/function.basename.php pourra
aussi t'aider.

--
Guillaume.

Avatar
pcrt
Bonjour Christophe,

Tu as simplement oublié de modifier la chaîne $img_name. Je m'explique:
$extension = substr($img_name, strrpos($img_name, ".")); // récupère
l'extension c'est ok -> c'est à dire ".jpg" par exemple

Mais
$nvlimage = $img_name . "_lien" . $extension; // reprend exactement le nom
de l'ancienne image extension incluse + ce que tu veux ajouter soit
toto.jpg_lien.jpg

Tu as juste à remplacer l'avant dernière ligne par :
$nvlimage =substr($img_name,0, strpos($img_name, ".") ). _lien . $extension;

Voilà




"iRiS" a écrit dans le message de news:
3f219461$0$15571$
Bonsoir à tous !

J'ai un formulaire de liens avec upload d'un logo.

Je renomme le logo pour associer la catégorie
par exemple : logo.jpg devrait devrait devenir logo_sports.jpg, hors
j'obtiens logo.jpg_sports.jpg

Comment procéder enlever ".jpg" après "logo" ou obtenir dans une variable
que "logo" et non "logo.jpg"

Voici le code :

//traitement du formulaire de modification.
if ($bouton=="ajouter"){
// définition de l'espace destiné à recevoir les fichiers
$rep="../img/";
$extension = substr($img_name, strrpos($img_name, "."));
$nvlimage = $img_name . "_lien" . $extension;
$path = $rep.$nvlimage;

merci d'avance de l'aide vous voudriez bien m'apporter
Christophe