
le 21/07/2005 à 17:42
SiM07
Voici le srcipt avant :
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.
- <?
- 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.