Renommer variable avant traitement

Résolu
t671 Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   -  
t671 Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je veux renommer un nom de fichier à inscrire dans ma base. Mais avant, je veux vérifier si le nom existe déjà. Si c'est le cas, je renomme le nom à inscrire.

$fic = explode(".", $fichier);

 	$doublon = "SELECT * FROM photos WHERE nom='$fic[0]'"; //recherche si il existe un nom déjà existant
	$result = mysql_query($doublon,$link) or die ('Erreur : '.mysql_error() );

	if (file_exists("$result")) 
	{
		$fic[0] = $fic[0]$idph; //je ne sais pas trop en quoi le renommer ..... de toute façon ça ne fofonnctionne pas .....
	}


$fichier est le nom du fichier
$idph est l'identifiant unique

Merci
Configuration: Windows Vista Internet Explorer 7.0

3 réponses

  1. chuka Messages postés 980 Statut Membre 379
     
    Salut,je suis pas un expert php..mais quand tu as $result, si tu parcours pas les lignes qu'il y'a dans $result
    if (file_exists("$result")) sera toujours faux...
    un truc du style pourra peut-etre t'aider!!
    while ($row = mysql_fetch_array($result, MYSQL_ASSOC))
    {
    if (file_exists($result['le_nom_du_champs']))
    blablabla....
    }
    @+

    0
  2. t671 Messages postés 1475 Date d'inscription   Statut Membre Dernière intervention   11
     
    J'ai trouvé :

    $fic = explode(".", $fichier);

    //------------------verif doublon fichier-----------------

    $verif = "SELECT nom,doublon FROM photos where nom like '$fic[0]'";
    $result = mysql_query($verif,$link) or die ('Erreur : '.mysql_error() );
    while($row = mysql_fetch_row($result))
    {
    //récup des infos de $result
    $nom = $row[0];
    $doublon = $row[1];

    $doublon2 = $doublon + 1;

    //mise à jour du champ "doublon" pour l'élément déjà existant
    $maj_doub = mysql_query("UPDATE photos SET doublon='$doublon2' WHERE nom='$row[0]'");

    $doublon3 = $doublon2 + 1; //champ doublon du nouvel enregistrement
    $fic[0] = $fic[0].$doublon2; //nouveau nom du fichier sans son extension
    $fichier = "$fic[0].$fic[1]"; //nouveau nom du fichier avec son extension
    }
    0