probleme d'upload en 2006

Le
philpavans
Je gère mon site en uploadant chaque jour une nouvelle image dont le nom est
forcément du type "yy-mm-jj_hh-mm-ss.jpg" .

J'ai pour cela une page d'admin a partir de laquelle j'uploade l'image en
ajoutant un commentaire.

L'image se charge en se redimensionnant dans un dossier (type
yyyy/mm/yy-mm-jj_hh-mm-ss.jpg), en creant une vignette dans le même dossier
et en créant une entrée dans la base sql.

Depuis le passage à 2006 cela ne fonctionne plus.

La base de donnée se met bien à jour mais l'upload ne se fait pas en
réalité, et je doit faire l'upload par ftp.

J'ai beau eplucher les lignes php de la page admin je ne comprends pas d'où
peut venir le problème.

Si vous avez le courage d'y jeter un oeil peut-être saurez-vous trouver :

Merci d'avance.

philpavans@yahoo.fr





<?
/* Lecture de la configuration */
require_once("config.php");

$form_login = false;

if(!isset($_POST['go']) && isset($HTTP_COOKIE_VARS['identifiant']) &&
!isset($logout)) {
if($HTTP_COOKIE_VARS['identifiant'] != $_SERVER['REMOTE_ADDR']) {
/* Le cookie n'est pas bon */
$form_login = true;
} else {
/* Le cookie est bon, on le réécrit */
setcookie("identifiant", $_SERVER['REMOTE_ADDR'], time()+900);
}
} else {
$form_login = true;
}

if(isset($_POST['logout'])) {
setcookie("identifiant", "nobody", time()-1);
setcookie("commente", "non", time()-1);
header("Location: Admin.php");
$logout = true;
}

function redimensionneImage($in,$out,$g,$p) {
$image = ImageCreateFromJpeg($in);
if(imagesx($image) > imagesy($image)) {
$ratio=imagesy($image)/imagesx($image);
$nouvelle_largeur = $g;
$nouvelle_hauteur = $g*$ratio;
} else {
$ratio=imagesx($image)/imagesy($image);
$nouvelle_largeur = $g*$ratio;
$nouvelle_hauteur = $g;
}
$largeur = imagesx($image);
$hauteur = imagesy($image);
$vignette = ImageCreateTrueColor($nouvelle_largeur, $nouvelle_hauteur);
ImageCopyResampled($vignette, $image, 0, 0, 0,
0,$nouvelle_largeur,$nouvelle_hauteur,$largeur, $hauteur);
ImageJpeg($vignette, $out, 95);
ImageDestroy($vignette);
unset($image);
}


if(isset($_POST['MAX_FILE_SIZE'])) {
if(preg_match("/^.*.jpg/i", $_FILES['userfile']['name'])) {
if(preg_match("/^dd-dd-dd_dd-dd-dd.jpg/i",
$_FILES['userfile']['name'])) {
$fichier = basename(strToLower($_FILES['userfile']['name']), ".jpg");
$tableau = explode("_", $fichier);
$RefDate = explode("-", $tableau[0]);
$RefHeure = explode("-", $tableau[1]);
$annee = $RefDate[0];
$an = '20'.$annee;
$mois = $RefDate[1];
$jour = $RefDate[2];

if($jour < 10){
$jour_court = str_replace("0","", $jour);
} else {
$jour_court = $jour;
}
if($mois < 10){
$mois_court = str_replace("0","", $mois);
} else {
$mois_court = $mois;
}
$Heures = $RefHeure[0];
$Minutes = $RefHeure[1];
$Secondes = $RefHeure[2];
if($mois <= 12 && $jour <= 31 && $Heures <= 23 && $Minutes <= 59 &&
$Secondes <= 59) {
$thumb = sprintf("./%s/%s/%sc.jpg", $an, $mois, $fichier);
$Photo = sprintf("./%s/%s/%s", $an, $mois,
strToLower($_FILES['userfile']['name']));
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
print("<center>Le fichier est valide et a &eacute;t&eacute;
upload&eacute; avec succ&egrave;s.</center>");
print("<center>Création de $thumb</center>");
redimensionneImage($_FILES['userfile']['tmp_name'],$thumb,88,66);
print("<center>Création de $Photo</center>");
redimensionneImage($_FILES['userfile']['tmp_name'],$Photo,448,336);
} else {
print("<center>L'upload du fichier a échoué.</center>");
}
$unixtime = date("U",
mktime($Heures,$Minutes,$Secondes,$mois_court,$jour_court,$an));
$commentaire = nl2br($_POST['commentaire']);
$query = "INSERT INTO journal
VALUES('','$an','$mois','$jour','$fichier','$commentaire','$unixtime')";
mysql_query($query, $connexion);
}
} else {
print("<center><u>Fichier non valide:</u> format
<b>YY-MM-dd_hh-mm-ss.jpg</b> attendu</center>");
}
} else {
print("<center><u>Fichier non valide:</u> extension <b>.jpg</b>
attendue</center>");
}
}

if(isset($_POST['commente'])) {
setcookie("commente", "oui", time()+900);
header("Location: index.php");
}

if(isset($_POST['go'])) {
$login = $_POST['login'];
$pass = $_POST['passwd'];
if($login == $UserName && $pass == $UserPass) {
setcookie("identifiant", $_SERVER['REMOTE_ADDR'], time()+900);
header("Location: Admin.php");
} else {
$form_login = true;
}
}
?>
<HTML>
<HEAD>
<TITLE></TITLE>
<script language="javascript">
function valide(msg)
{
if (msg == '' || typeof(window.opera) != 'undefined') {
return true;
}
var is_confirmed = confirm(msg);
return is_confirmed;
}
</script>
</HEAD>
<BODY BGCOLOR="#000000" TEXT="#D4D4D4" LINK="#D4D4D4" VLINK="#D4D4D4"
ALINK="#D4D4D4" LEFTMARGIN="0" TOPMARGIN="0">
<?
if($form_login == true) {
print(" <BR>");
print(" <FORM action='' method='post'>");
print(" <INPUT type='hidden' name='go' value='1'>");
print(" <TABLE align='center' cellSpacing='0' cellPadding='0'
width='250' border='0'>");
print(" <TR>");
print(" <TD>Login:</TD>");
print(" <TD><INPUT type='text' name='login'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>Password:</TD>");
print(" <TD><INPUT type='password' name='passwd'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD colspan='2' align='center'><INPUT type='submit'
value='Se logguer'></TD>");
print(" </TR>");
print(" </TABLE>");
print(" </FORM>");
} else {
if(isset($_POST['maj'])) {
$racine = opendir('.');
print(" <center>");
while ($YearDir = readdir($racine)) {
if ($YearDir != "." && $YearDir != ".." && strlen($YearDir) == "4") {
$dir = opendir("./$YearDir");
while($MonthDir = readdir($dir)) {
if ($MonthDir != "." && $MonthDir != "..") {
print(" <br><br>");
print(" <b>$MonthDir/$YearDir</b>");
print(" <br>");
print(" ");
$sousrep = opendir("./$YearDir/$MonthDir");
while($file = readdir($sousrep)) {
unset($jour);
if ($file != "." && $file != ".." &&
preg_match("/[^d]-.*c.jpg/i", $file)) {
$CheminBase = basename($file, "c.jpg");
$thumb = "./".$YearDir."/".$MonthDir."/".$file;
$Photo = "./".$YearDir."/".$MonthDir."/".$CheminBase.".jpg";
$tab = explode("_", $CheminBase);
$Nbr = count($tab);
if($Nbr > 1) {
$periode = $tab[1];
$tabDate = explode("-", $tab[0]);
$jour = false;
foreach($tabDate As $value) {
$LittleYear = $YearDir[2].$YearDir[3];
if($value != $LittleYear && $value != $MonthDir && $jour
== false) {
$jour = $value;
}
}
if($jour == "") {
if($tabDate[2] <= 31) {
$jour = $tabDate[2];
}
}
$tabPeriode = explode("-", $tab[1]);
if(count($tabPeriode) == 3) {
$heure = $tabPeriode[0];
$minutes = $tabPeriode[1];
$secondes = $tabPeriode[2];
} else {
$heure = 0;
$minutes = 0;
$secondes = 0;
}
} else {
$tabDate = explode("-", $CheminBase);
$jour = false;
foreach($tabDate As $value) {
$LittleYear = $YearDir[2].$YearDir[3];
if($value != $LittleYear && $value != $MonthDir && $jour
== false) {
$jour = $value;
}
}
if($jour == "") {
if($tabDate[2] <= 31) {
$jour = $tabDate[2];
}
}
$heure = 0;
$minutes = 0;
$secondes = 0;
}
if($MonthDir <= 12 && isset($jour)) {
if($MonthDir < 10)
$mois = str_replace('0', '', $MonthDir);
$jourb = $jour;
if($jour < 10)
$jourb = str_replace('0', '', $jour);
$unixtime = date("U",
mktime($heure,$minutes,$secondes,$mois,$jourb,$YearDir));
if(file_exists($thumb) && file_exists($Photo) && $jour <=
31) {
$quer = "SELECT * FROM journal WHERE annee='$YearDir'
AND mois='$MonthDir' AND jour='$jour' AND photo='$CheminBase'";
$res = mysql_query($quer, $connexion);
$nbr = mysql_num_rows($res) OR $nbr = 0;
if($nbr == 0) {
print("$jour ");
$quer = "INSERT INTO journal
VALUES('','$YearDir','$MonthDir','$jour','$CheminBase','','$unixtime')";
mysql_query($quer, $connexion);
}
}
}
}
}
print("");
closedir($sousrep);
}
}
closedir($dir);
}
}
closedir($racine);
print(" </center>");
} else {
print(" <BR>");
print(" <FORM action='' method='post'
ENCTYPE='multipart/form-data'>");
print(" <INPUT TYPE='hidden' name='MAX_FILE_SIZE'
value='2097152'>");
print(" <TABLE STYLE="border-style: solid; border-width: 1px;
border-color:#FFFFFF" align='center' cellSpacing='0' cellPadding='0'
width='500' border='0'>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'>");
print(" <b>Uploader une photo</b>");
print(" </TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><INPUT NAME='userfile' TYPE='file'
size='30'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TR>");
print(" <TD align='center'>Commentaire:</TEXTAREA></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><TEXTAREA name='commentaire' rows='3'
cols='35'></TEXTAREA></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><INPUT TYPE='submit'
VALUE='Envoyer'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" </TABLE>");
print(" </FORM>");
print(" <BR>");
print(" <FORM action='' method='post' OnSubmit="return valide('Lancer
la mise à jour ?');">");
print(" <INPUT type='hidden' name='maj' value='1'>");
print(" <TABLE STYLE="border-style: solid; border-width: 1px;
border-color:#FFFFFF" align='center' cellSpacing='0' cellPadding='0'
width='500' border='0'>");
print(" <TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TD align='center'>");
print(" <b>Rappel de l'arborescence:</b>");
print(" <BR><BR>");
print(" Journal/YYYY/MM/YY-MM-dd_hh-mm-ss.jpg");
print(" <BR>");
print(" avec Y=Année, M=Mois, d=Jour, h=Heures, m=Minutes,
s=Secondes");
print(" </TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><INPUT type='submit' value='Mettre à
jour la base de données'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" </TABLE>");
print(" </FORM>");
print(" <BR>");
print(" <FORM action='' method='post'>");
print(" <INPUT type='hidden' name='commente' value='1'>");
print(" <TABLE STYLE="border-style: solid; border-width: 1px;
border-color:#FFFFFF" align='center' cellSpacing='0' cellPadding='0'
width='500' border='0'>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'>");
print(" <b>Modification/Ajout de commentaires:</b>");
print(" <BR><BR>");
print(" Affiche un lien <i>Commenter</i> sous les photos");
print(" </TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><INPUT type='submit'
value='Afficher'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" </TABLE>");
print(" </FORM>");
print(" <BR>");
print(" <FORM action='' method='post'>");
print(" <INPUT type='hidden' name='logout' value='1'>");
print(" <TABLE STYLE="border-style: solid; border-width: 1px;
border-color:#FFFFFF" align='center' cellSpacing='0' cellPadding='0'
width='500' border='0'>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'>");
print(" <b>Sortir du mode admin</b>");
print(" </TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" <TR>");
print(" <TD align='center'><INPUT type='submit' value='Se
Délogguer'></TD>");
print(" </TR>");
print(" <TR>");
print(" <TD>&nbsp;</TD>");
print(" </TR>");
print(" </TABLE>");
print(" </FORM>");
print(" <BR>");
}
}
?>
</BODY>
</HTML>
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
Paul Delannoy
Le #858970
philpavans a écrit:
Je gère mon site en uploadant chaque jour une nouvelle image dont le nom est
forcément du type "yy-mm-jj_hh-mm-ss.jpg" .

J'ai pour cela une page d'admin a partir de laquelle j'uploade l'image en
ajoutant un commentaire.

L'image se charge en se redimensionnant dans un dossier (type
yyyy/mm/yy-mm-jj_hh-mm-ss.jpg), en creant une vignette dans le même dossier
et en créant une entrée dans la base sql.

Depuis le passage à 2006 cela ne fonctionne plus.

La base de donnée se met bien à jour mais l'upload ne se fait pas en
réalité, et je doit faire l'upload par ftp.


Changement chez l'hébergeur que tu n'aurai pas anticipé ? Qui est-ce ?

Guillaume JANY
Le #858798
L'image se charge en se redimensionnant dans un dossier (type
yyyy/mm/yy-mm-jj_hh-mm-ss.jpg), en creant une vignette dans le même
dossier

et en créant une entrée dans la base sql.

Depuis le passage à 2006 cela ne fonctionne plus.



peut-être les droits en écriture sur le répertoire 2006 ?

Guillaume
www.designerspace.com

Ezechiel
Le #858796
L'image se charge en se redimensionnant dans un dossier (type
yyyy/mm/yy-mm-jj_hh-mm-ss.jpg), en creant une vignette dans le même


dossier

et en créant une entrée dans la base sql.

Depuis le passage à 2006 cela ne fonctionne plus.




peut-être les droits en écriture sur le répertoire 2006 ?

Guillaume
www.designerspace.com


Ptet même bien que le répertoire 2006 en question n'existe pas.

--
Ezechiel


philpavans
Le #864331
ABSOLUMENT ! Comment n'y ai je pas pensé!
J'avais bien créé le repertoire mais pas reglé les attributs.

Merci infiniment.

philpavans


"Guillaume JANY" de news: 43d544cd$0$2115$
L'image se charge en se redimensionnant dans un dossier (type
yyyy/mm/yy-mm-jj_hh-mm-ss.jpg), en creant une vignette dans le même
dossier

et en créant une entrée dans la base sql.

Depuis le passage à 2006 cela ne fonctionne plus.



peut-être les droits en écriture sur le répertoire 2006 ?

Guillaume
www.designerspace.com



Poster une réponse
Anonyme