Votre question

pb de codage en php(résolu)

Tags :
  • Asp
  • Programmation
Dernière réponse : dans Programmation
21 Mai 2007 11:46:19

Bonjour :hello: 
je fais une migration de ASP vers php, et je rencontre un pb avec mon code en php.si qqn peut m'aider svp!!
je vous donne le code d'origine en ASP et le code correspondant en php que j'ai fait.
Merci d'avance

code en ASP

<%
// on veut tester si un fichier existe
// définition du chemein absolu du fichier
Set fso = CreateObject("Scripting.FileSystemObject")
rep= Server.MapPath("\Entrenoo\upload_MPM\ACompleter\")
set fo=fso.GetFolder(rep&"\")
for each x in fo.SubFolders
For each fich in x.Files
if month(date())>month(fich.datecreated)+2 then
else if month(date())=month(fich.datecreated)+2 then
if day(date())>day(fich.datecreated) then
fich.delete
end if
end if
end if
Next
next

rep= Server.MapPath("\Entrenoo\upload_MPM\Completés\")
set fo=fso.GetFolder(rep&"\")
for each x in fo.SubFolders
For each fich in x.Files
if month(date())>month(fich.datecreated)+2 then
else if month(date())=month(fich.datecreated)+2 then
if day(date())>day(fich.datecreated) then
fich.delete
end if
end if
end if
Next
next
%>


code en php

<?
$rep="\Entrenoo\upload_MPM\ACompleter\";
$dir=opendir($rep);
while($R=readdir($dir)){
while($f=readdir($R)){
if(is_file($R.$f){
$format='m';
if ($mois=date($format))> date("m",filectime($R.$f))+2 {
else if ($mois=date($format))=date("m",filectime($R.$f))+2{
$format='d';
if ($jour=date($format))> date("d",filectime($R.$f)){
unlink($f);
}
}
}
}
}
}
$rep="\Entrenoo\upload_MPM\Completés\";
$dir=opendir($rep);
while($R=readdir($dir)){
while($f=readdir($R)){
if(is_file($R.$f){
$format='m';
if ($mois=date($format))> date("m",filectime($R.$f))+2 {
else if ($mois=date($format))=date("m",filectime($R.$f))+2{
$format='d';
if ($jour=date($format))> date("d",filectime($R.$f)){
unlink($f);
}
}
}
}
}
}
?>

Autres pages sur : codage php resolu

21 Mai 2007 13:15:16

sous php, le \ dans une chaine de caractère est un caractère d'echapement "\n" par exemple indique un saut de ligne.
pour les chemin des répertoires/fichiers, il faut utiliser /
21 Mai 2007 13:18:07

sauf si c'est du windobe.
Contenus similaires
21 Mai 2007 13:25:04

si il avait de l'ASP, à mon avis, ca doit etre du windows, effectivement on peut utiliser \ mais dans ce cas, il faut le doubler:
c:\\rep\\fichier
mais comme c'est des chemins relatifs, autant utiliser /, ce qui rend le programme portable vu que c'est autorisé dans un environnement windows
21 Mai 2007 14:08:12

peut etre, je n'ai jamais été confronté à ce genre de cas.
Sous linux tu peut faire tourné de l'asp avec certain module (je ne connais pas non plus la manip exacte)
ce qui fait que l'on ne sait pas trop sur quel os il tournait, on va attendre ;) 
21 Mai 2007 15:12:31

Merci bcp,
et dire qu'un caractère peut tout changer en prog.
merci encore une fois le pb est résolu. :) 
21 Mai 2007 15:19:43

comme tu es toute nouvelle sur le forum, autant prendre une bonne habitude, lorsqu'un probleme est résolu, modifie le titre en y rajoutant [resolu] au début, ca facilite les recherches

pour modifier le titre, utilise sur ton premier post

EDIT: corrigé ;) 
22 Mai 2007 14:52:58

je suis une fiiiiiiiillllllllllle :kaola: 
22 Mai 2007 15:05:43

asv \o/
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS