IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Suppression des données sql si image trop lourde


Sujet :

PHP & Base de données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Suppression des données sql si image trop lourde
    Bonjour à tous !

    Voila je suis devant un probleme depuis quelques jours que je ne parviens pas à ressoudre , peut etre que certain d'entre vous seront m'aider dans mon script.

    Depuis un formulaire l'internaute met à jour sa fiche , ses informations, son texte et ... ses images ! Que je redimensione , Mais voilà si l'image ou les images sont trop lourde cela vient effacer l'ensemble des données du client . Pourtant la requete upload entre les informations texte et les images est differente !

    voici une partie de l'execution du script :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    $query = mysql_query("UPDATE $db_table SET societe='$societe', adresse='$adresse', ..., cp='$cp', ville='$ville' motcle='$motcle' WHERE login='$ploginy'");
     
    // if($logo!="") {
    //$query = mysql_query("UPDATE $db_table SET logo='$logo' WHERE login='$ploginy'"); }
     
    connexiondb();
    $query = mysql_query("SELECT id_annu_prest, login FROM $db_table WHERE login='$ploginy'") or die(mysql_error());;
    list($id_annu_prest, $login) = mysql_fetch_row($query);
     Mysql_close($db_table);
     
     if (is_uploaded_file($ImageNews)){
      if ($_FILES['ImageNews']['error'] <= 0){
        if ($_FILES['ImageNews']['size'] <= 1097152){
            $ImageNews = $_FILES['ImageNews']['name'];
    		// Je crée un array dans lequel figurent seulement les extensions acceptées, avec le type MIME qui leur est associé (qui peut varier sous IE et qu'on va donc devoir différencier) :
    $ListeExtension = array('jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'png' => 'image/png', 'gif' => 'image/gif');
    $ListeExtensionIE = array('jpg' => 'image/pjpg', 'jpeg'=>'image/pjpeg'); // Il fallait une nouvelle fois qu'IE se différencie.
     
    $ExtensionPresumee = explode('.', $ImageNews);
    $ExtensionPresumee = strtolower($ExtensionPresumee[count($ExtensionPresumee)-1]);
    if ($ExtensionPresumee == 'jpg' || $ExtensionPresumee == 'jpeg' || $ExtensionPresumee == 'pjpg' || $ExtensionPresumee == 'pjpeg' || $ExtensionPresumee == 'gif' || $ExtensionPresumee == 'png'){
    // On pourra alors continuer notre vérification.
    	$ImageChoisie = imagecreatefromjpeg($_FILES['ImageNews']['tmp_name']);
    	$TailleImageChoisie = getimagesize($_FILES['ImageNews']['tmp_name']);
    // Étape 1 :
    $NouvelleLargeur = 150;
     
    // Étape 2 :
    $Reduction = ( ($NouvelleLargeur * 100)/$TailleImageChoisie[0] );
     
    // Étape 3 :
    $NouvelleHauteur = ( ($TailleImageChoisie[1] * $Reduction)/100 );
     
    	//Etape 1 :
    $NouvelleImage = imagecreatetruecolor($NouvelleLargeur , $NouvelleHauteur) or die ("Erreur");
     
    //Etape 2 :
    imagecopyresampled($NouvelleImage , $ImageChoisie, 0, 0, 0, 0, $NouvelleLargeur, $NouvelleHauteur, $TailleImageChoisie[0],$TailleImageChoisie[1]);
     
     
    $NomImageChoisie = explode('.', $ImageNews);
    $NomImageExploitable = time();
     
    imagejpeg($NouvelleImage , 'uploads/'.$NomImageExploitable.'.'.$ExtensionPresumee, 70);
    imagejpeg($ImageChoisie , 'uploads/'.$NomImageExploitable.'FullImage.'.$ExtensionPresumee, 100);
     
    move_uploaded_file ($NouvelleImage,$imgs_folder . "/" . $img_princ_name2);
     
    $LienImageNews = 'uploads/'.$NomImageExploitable.'.'.$ExtensionPresumee;
     
    $query = mysql_query("UPDATE $db_table SET logo='$NomImageExploitable.$ExtensionPresumee' WHERE login='$ploginy'") or die(mysql_error());;
    }
    }}
    }
    //
    //image theme1
     
    if (is_uploaded_file($img_p1)){	
    	if ($img_p1_type == "image/jpg" OR $img_p1_type == "image/gif" OR $img_p1_type == "image/jpeg" OR $img_p1_type == "image/pjpeg"){
    	$img_p1_name2= $id_annu_prest. "-" . $login . "-" . $img_p1_name;
    	$img_p1_name2 = str_replace(' ', '', $img_p1_name2);
    		$img_p1_name2 = str_replace('é', '', $img_p1_name2);
    $img_p1_name2 = str_replace('"', '', $img_p1_name2);
    $img_p1_name2 = str_replace('è', '', $img_p1_name2);
    $img_p1_name2 = str_replace('à', '', $img_p1_name2);
    $img_p1_name2 = str_replace(';', '', $img_p1_name2);
     
    $img_p1_name2 = str_replace( "'", "", $img_p1_name2);	
    	move_uploaded_file ($_FILES['img_p1']['tmp_name'],$imgs_folder . "/" . $img_p1_name2);
    	}
    	else{
    	echo"<center><font><b><u>Type du fichier</u><br>".$_FILES['img_p1']['type']."<br>Invalide</b></font></center>";
    	exit;
    	}
     
    $query = mysql_query("UPDATE $db_table2 SET img_p1='$img_p1_name2' WHERE id=$id") or die(mysql_error());;
    }
     
    //image therme 2
     
    if (is_uploaded_file($img_p2)){
    	if ($img_p2_type == "image/jpg" OR $img_p2_type == "image/gif" OR $img_p2_type == "image/jpeg" OR $img_p2_type == "image/pjpeg"){
    	$img_p2_name2= $id_annu_prest. "-" . $login . "-" . $img_p2_name;
    	$img_p2_name2 = str_replace(' ', '', $img_p2_name2);
    	$img_p2_name2 = str_replace('é', '', $img_p2_name2);
    $img_p2_name2 = str_replace('"', '', $img_p2_name2);
    $img_p2_name2 = str_replace('è', '', $img_p2_name2);
    $img_p2_name2 = str_replace('à', '', $img_p2_name2);
    $img_p2_name2 = str_replace(';', '', $img_p2_name2);
     
    $img_p2_name2 = str_replace( "'", "", $img_p2_name2);
    	move_uploaded_file ($_FILES['img_p2']['tmp_name'],$imgs_folder . "/" . $img_p2_name2);
    	}
    	else{
    	echo"<center><font><b><u>Type du fichier</u><br>".$_FILES['img_p2']['type']."<br>Invalide</b></font></center>";
    	exit;
    	}
     
    $query = mysql_query("UPDATE $db_table2 SET img_p2='$img_p2_name2' WHERE id=$id") or die(mysql_error());;
     
    }
     
    // image principal
     
    if (is_uploaded_file($img_princ)){
    	if ($img_princ_type == "image/jpg" OR $img_princ_type == "image/gif" OR $img_princ_type == "image/jpeg" OR $img_princ_type == "image/pjpeg"){
    	$img_princ_name2= $id_annu_prest. "-" . $login . "-" . $img_princ_name;	
    $img_princ_name2 = str_replace(' ', '', $img_princ_name2);
    $img_princ_name2 = str_replace('"', '', $img_princ_name2);
    $img_princ_name2 = str_replace('è', '', $img_princ_name2);
    $img_princ_name2 = str_replace('à', '', $img_princ_name2);
    $img_princ_name2 = str_replace(';', '', $img_princ_name2);
     
    $img_princ_name2 = str_replace( "'", "", $img_princ_name2);
    	move_uploaded_file ($_FILES['img_princ']['tmp_name'],$imgs_folder . "/" . $img_princ_name2);
    	}
    	else
    	{
    	echo"<center><font><b><u>Type du fichier</u><br>".$_FILES['img_princ']['type']."<br>Invalide</b></font></center>";
    	exit;
    	}
     
    $query = mysql_query("UPDATE $db_table2 SET img_princ='$img_princ_name2' WHERE id=$id ") or die(mysql_error());;
    }
     
     
    $query = mysql_query("UPDATE $db_table2 SET prest1='$prest1', ... WHERE id=$id") or die(mysql_error());;
     
     
    echo"<script language=\"Javascript\">alert('Vos informations ont été mises à jour !');window.location='fin.php';</script>";
    exit;}

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu nous montres une requête suivie d'une connexion à la base de données, suivie d'une requête, suivie d'une fermeture de la connexion, suivie d'une requête...
    Soit le script que tu nous montres est très résumé, soit il y a un problème.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut merci
    Oui j'ai séparé les requêtes pour éviter que cela n'efface toutes les données si probleme avec upload d'image ... mais cela ne change rien ! toutes les données sont effacées

  4. #4
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $query = mysql_query("UPDATE $db_table SET societe='$societe', adresse='$adresse', ..., cp='$cp', ville='$ville' motcle='$motcle' WHERE login='$ploginy'");
    C'est dans cette table là que les données du client sont effacées ?
    Si j'ai bien compris, cette requête se fait après la validation du formulaire ? $societe, $adresse, $cp... sont des données en POST ?

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    oui parfaitement !

  6. #6
    Invité
    Invité(e)
    Par défaut
    Tout d'abord, peux tu ajouter dans ton script un var_dump($_POST), valider ton formulaire avec une image "trop lourde" et nous montrer ce que var_dump($_POST) te retourne ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var_dump($_POST);
     
    $query = mysql_query("UPDATE $db_table SET societe='$societe', adresse='$adresse', ..., cp='$cp', ville='$ville' motcle='$motcle' WHERE login='$ploginy'");
    ...
    $ploginy contient des données transmises en POST ?

    Peut être que les données du formulaire ne sont pas envoyées à cause de ton fichier image trop lourd.
    Il faut voir aussi dans ton fichier php.ini
    Et faire une vérification avant ta requête SQL, un truc dans le genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if (isset($_POST)
    {
           $query = mysql_query("UPDATE $db_table SET societe='$societe', adresse='$adresse', ..., cp='$cp', ville='$ville' motcle='$motcle' WHERE login='$ploginy'");
    ...
    }
    else
    {
          echo "échec";
    }
    Dernière modification par Invité ; 07/11/2014 à 15h18.

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2014
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    ok super j'essaye ca dans la soiree

Discussions similaires

  1. [Excel] Générer des fichiers Excel avec PHP et des données SQL
    Par MaTHieU_ dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 29/03/2006, 15h46
  2. [VBA-W]récupérer des données SQL
    Par Taz_8626 dans le forum VBA Word
    Réponses: 2
    Dernier message: 15/03/2006, 09h46
  3. Raffraichissement d'image trop lourd
    Par ppopov dans le forum AWT/Swing
    Réponses: 12
    Dernier message: 07/02/2006, 18h41
  4. Transposer des données sql dans un fichier texte
    Par Anakior dans le forum Outils
    Réponses: 3
    Dernier message: 11/12/2005, 10h01
  5. Afficher sous Word des données SQL qui contient des retours
    Par samoht dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 30/09/2005, 16h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo