Boucle avec if [Résolu]

Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Dernière intervention
12 juillet 2006
- - Dernière réponse : morpheus262
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Dernière intervention
16 février 2012
- 27 avril 2005 à 10:18
Bonjour,
j'ai un petit problème avec mes boucles "if" !!
voilà j'ai un premeier formulaire qui sélectionne un fichier sur mon disque et je souhaite en faire un copie ailleurs.
Mais je lui dis de regarder l'extension du fichier pour savoir quel format adopter au nouveau fichier.
Mais il ne tiens pas compte de mon if !! il me créer l'ensemble des fichiers (txt, xls, csv!! alors que je ne souhaite que celui qui correspond à l'extension du fichier sélectionné!!
Ci dessous mon script :

<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>






Traitement d'enregistrement de la source de données.

Merci de patienter.





<?php


// affichage des parametres
echo $nom_fichier;
$date= date ("Y-m-j");
$extent=substr($nom_fichier, -3, 3);
echo $extent;


if ($extent=="xls");
{
{
if(@copy($nom_fichier,'../data/nvsirene.xls'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}
}
if ($extent=="txt");
{
{
if(@copy($nom_fichier,'../data/nvsirene.txt'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}
}
if ($extent=="csv");
{
{
if(@copy($nom_fichier,'../data/nvsirene.csv'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}
}


?>


<?php


$hote_mysql = "localhost";


//Adresse du serveur mysql


$user_mysql = "root";
//Nom d'utilisateur du webmaster (généralement le même que pour l'accés FTP par exemple)


$passwd_mysql = "root";
// Mot de passe du webmaster (généralement le même que pour l'accés FTP par exemple)


$base_mysql = "sources";
// Nom de la base MySql (généralement identique au nom d'utilisateur)


// Connection au serveur
mysql_connect("$hote_mysql","$user_mysql","$passwd_mysql") or die(mysql_error());


$sql_create = "insert into ENREGIST (date, operation, fichier) values ('$date', 'ENREG' , '$nom_fichier')";


$req_create = mysql_db_query($base_mysql, $sql_create) or die(mysql_error());



//femeture de la connection au serveur MySQL


mysql_close();
?>


Fin de traitement d'enregistrement de la source de données.



<?php


exec ("export.bat");


?>



<FORM method="post" action="mail.php">



<!- Retour ->
Retour au formulaire de traitement:



</FORM>



</html>
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Dernière intervention
16 février 2012
3
Merci
Salut,

Bon deja un if n'est pas une boucle, ne dis jamais ca devant un puriste de l algo ou tu es mort lol.
bon dans ton programme il y a un peu trop de {} et trop de { tu le { enfin lol.

essaye avec ma version, j ai aussi rajouter des else, ca ne sert a rien de faire les trois test si le premier est bon.

// affichage des parametres
echo $nom_fichier;
$date= date ("Y-m-j");
$extent=substr($nom_fichier, -3, 3);
echo $extent;





if ($extent=="xls");
{
if(copy($nom_fichier,'../data/nvsirene.xls'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}





else if ($extent=="txt");
{
if(copy($nom_fichier,'../data/nvsirene.txt'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}





else if ($extent=="csv");
{
if(copy($nom_fichier,'../data/nvsirene.csv'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de morpheus262
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Dernière intervention
16 février 2012
3
Merci
de rien, accepte nos reponse si ca marche


<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 98 internautes nous ont dit merci ce mois-ci

Commenter la réponse de morpheus262
Messages postés
10918
Date d'inscription
lundi 24 février 2003
Dernière intervention
2 mars 2010
31
0
Merci
Hello,



enleve les ; apres tes if() :



exemple :



if ($extent=="xls");

devient


if ($extent=="xls")



Ensuite, pourquoi mets tu 2 accolades apres un if () ???

Une seule suffit...(et pense a bien fermer le bon nombre d'accolades).
Commenter la réponse de malalam
Messages postés
461
Date d'inscription
mardi 27 avril 2004
Dernière intervention
16 février 2012
0
Merci
exact malalm j avais pas vu les ;

le code devient a mon avis

// affichage des parametres
echo $nom_fichier;
$date= date ("Y-m-j");
$extent=substr($nom_fichier, -3, 3);
echo $extent;




if ($extent=="xls")
{
if(copy($nom_fichier,'../data/nvsirene.xls'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}





else if ($extent=="txt")
{
if(copy($nom_fichier,'../data/nvsirene.txt'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}





else if ($extent=="csv")
{
if(copy($nom_fichier,'../data/nvsirene.csv'))
{
echo 'Le fichier a été copié dans le répertoire.';
}
else
{
echo 'Erreur';
}
}

voila sans les ;

<HR>
On ne peut pas savoir tout faire, mais on peut tout apprendre avec du travail. Morpheus262

PS: Besoin d aide pour developper, besoin d un collaborateur pour faire votre site, contacter moi par mail
l
Commenter la réponse de morpheus262
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Dernière intervention
12 juillet 2006
0
Merci
Merci beaucoup tout fonctionne très bien !!
Désolé pour le mot boucle !!!! ;-)
merci à vous deux!!
Commenter la réponse de fredo35m

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.