trouver une sous chaîne dans une chaîne (nom d'un fichier)

Eléphant du PHP | 331 Messages

15 oct. 2009, 04:37

Bonjour,

J'ai besoin de faire un script pour changer des nom d'images.

C'est pour transférer le contenu d'un site d'annonce classées vers un autres programmes d'annonces classées

Le premier à nommé ses image de la façon suivante, considérant que une annonces à jusqu'à 5 images et a enregistré les données images dans une table ads_picture avec un champ id, ads_id et picture

username_0.jpg
username_1.jpg
username_2.jpg
username_3.jpg
username_4.jpg

Le nouveau programme que on veut utiliser nomme ses images avec le id de l'annonce + le nom du champs de la bd qui contient l'image.

id_40.jpg
id_68.jpg
id_45.jpg
id_112.jpg
id_42.jpg

J'ai faire une requete qui renomme les images en lui attribuant le id de l'annonce

Mon problème est que je ne sais pas quoi ajouter pour que sa reconnaisse la fin du nom de fichier ( -0.jpg ou -1.jpg) pour les remplacer par (_40.jpg ou _112.jpg)

Voici mon code qui est le début de ma fonction:
mysql_connect("*********","************","************") or die("Impossible de connecter la bd");
$base=mysql_select_db("**********") or die("erreur de DB");
$table=mysql_query('select id, ad_id, picture from class_ads_pictures') or die("Impossible d'ouvrir la table");
while ($row=mysql_fetch_array($table))
	{
		copy("listing/".$row["picture"]."", "pictures/listings2/".$row["ad_id"].""); 
}
Pouvez-vous m'aider svp?

Merci!

##edit @rthur : retrait des identifiants...

ViPHP
ViPHP | 2291 Messages

15 oct. 2009, 08:13

Salut,

Alors je te conseil de vite supprimer tes identifiants dans l'exemple de code que tu a donner.
Sinon essaye avec str_replace()
ImageCe que l'on apprend par l'effort reste toujours ancré beaucoup plus longtemps.