upload de photo probleme

Répondre
SiM07
le 21/07/2005 à 17:42
SiM07
Voici le srcipt avant :

<?
session_start();
?>

<html>
<head>
<title>Traitement de votre proposition</title>

<body bgcolor="446DA4">
<?

include 'include/config.inc.php';

if(isset($_FILES['club'])) {
// params unset($erreur);
$extensions_ok = array('png', 'gif', 'jpg', 'jpeg', 'JPEG', 'JPG');
$taille_max = 999999;
$dest_dossier = 'photo/club/';
// vérifications
$img = substr(strrchr($_FILES['club']['name'], '.'), 1);
echo $_FILES['club']['name'].' => format '.$img.'<br>';

if($img == 'jpeg' || $img == 'JPEG') {
$phrase = $_FILES['club']['name'];
$regime = $img;
$img2 = 'jpg';
$bonne_chere = $img2;
$_FILES['club']['name'] = str_replace($regime, $bonne_chere, $phrase);
$img = $img2;
}

if($_FILES['club']['size'] == 0) {
echo 'La photo n\'est pas bonne';
}
else {

if (!in_array($img, $extensions_ok)) {
$erreur = 'Veuillez sélectionner un fichier de type png, gif ou jpg !';

/*if ( (file_exists($_FILES['photo']['tmp_name'])) && (filesize($_FILES['photo']['tmp_name']) > $taille_max) ) {
$erreur = 'Votre fichier doit faire moins de 100Ko !';
} else {
$erreur = 'Aucune erreur.';
}*/
echo $erreur;
}
// copie du fichier
if (!isset($erreur)) {
$dest_fichier = basename($_FILES['club']['name']);
// formatage nom fichier

$sql = 'SELECT nom FROM photo_club ORDER BY numero ASC';
$req = mysql_query($sql) or die ('ERREUR SQL !<br>'.$sql.'<br>'.mysql_error());
$data = mysql_num_rows($req);


//si $data == 0 alors il n'y a rien dans la BDD donc le futur enregistrement sera 001
if($data == 0) {
$futur_nom_numero = '001';
//ajout extension
$nom_numero = '001'.'.'.$img;

//On vas prendre le numero du login dans la BDD

//Insertion dans la BDD
$sql_ajout = 'Insert INTO photo_club VALUES ("", "'.$nom_numero.'", "'.$dest_dossier.'", "'.$_FILES['club']['size'].'", "'.$img.'", "'.$_SESSION['login_numero'].'", "", "0")';
$req_ajout = mysql_query($sql_ajout) or die ('ERREUR SQL !<br>'.$sql_ajout.'<br>'.mysql_error());

echo 'Photo en cous de validation';

}
else {

//on retire l'extension dans $data1[0]
$numero_extension = strlen($img);
$numero_extension = -($numero_extension+1);

while($data1 = mysql_fetch_array($req)) {
$nom_avant = substr($data1['nom'],0, $numero_extension);
}


echo $data1['nom'];

//on genere le nom puis on met l'extension
$futur_nom = $nom_avant + 1;

$nb_caractere_futur = strlen($futur_nom);
if($nb_caractere_futur == 1) {
$nom_numero = '00'.$futur_nom.'.'.$img;
}
elseif($nb_caractere_futur == 2) {
$nom_numero = '0'.$futur_nom.'.'.$img;
}
elseif($nb_caractere_futur == 3) {
$nom_numero = $futur_nom.'.'.$img;
}
else {
echo 'ERREUR MAJEUR !';
}

$sql_ajout = 'Insert INTO photo_club VALUES ("", "'.$nom_numero.'", "'.$dest_dossier.'", "'.$_FILES['club']['size'].'", "'.$img.'", "'.$_SESSION['login_numero'].'", "", "0")';
$req_ajout = mysql_query($sql_ajout) or die ('ERREUR SQL !<br>'.$sql_ajout.'<br>'.mysql_error());

echo 'Photo en cous de validation';

}





// copie du fichier
$fichier = $dest_dossier.$nom_numero;
move_uploaded_file($_FILES['club']['tmp_name'], $fichier);
}
}
}
?>
</body>
</html>


Bon le probleme est que pour certaine photo eh ben cela ne marche pas, si vous regarder dans le code a un moment j'ai du faire un truc : "LA photo n'est pas bonne" cela arrive rarement mais je ne sait pas pourquoi et comment resoudre le probleme !

Si vous avez un solution je serait preneur.
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours