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 :

insertion champ formulaire dans BDD [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif
    Inscrit en
    Octobre 2006
    Messages
    368
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 368
    Points : 289
    Points
    289
    Par défaut insertion champ formulaire dans BDD
    Bonjour
    je me lance dans le développement d'une petite galerie d'images.Pour cela j'ai un script qui upload les images dans un répertoire. je veux également insérer dans une base de données le non de l'images et le titre. j'ai développé avec PDO, mais chez free, il n'accepte pas cette fonction.Je doit donc insérer les données avec mysql normal et je suis un peut perdu.
    Pouvez vous me guider, Merci
    base avec2 champs: nom et titre
    Nom : table.jpg
Affichages : 110
Taille : 18,0 Ko

    le code:
    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
    <?php
    require('connect.php');
    if(!empty($_FILES) OR !empty($_POST))
    {
    	$avatar = $_FILES['avatar'];
    	$avatar_name = $avatar['name'];
    	$ext = strtolower(substr(strrchr($avatar_name,'.'),1));
    	$ext_aut = array('jpg','jpeg','png','gif');
     
    	function check_extension($ext,$ext_aut)
    	{
    		if(in_array($ext,$ext_aut))
    		{
    			return true;
    		}
    	}
     
    	$valid = (!check_extension($ext,$ext_aut)) ? false : true;
    	$erreur = (!check_extension($ext,$ext_aut)) ? 'Veuillez charger une image' : '';
     
    	if($valid)
    	{
    		$max_size = 80000;
    		if($avatar['size']>$max_size)
    		{
    			$valid = false;
    			$erreur = 'Fichier trop gros';
    		}
    	}
     
    	if($valid)
    	{
    		if($avatar['error']>0)
    		{
    			$valid = false;
    			$erreur = 'Erreur lors du transfert';
    		}
    	}
     
    	if($valid)
    	{
    		$path_to_image = 'images/fullsize/';
    		$path_to_min = 'images/min/';		
    		$filename = sha1(uniqid($avatar_name));
     
    		$source = $avatar['tmp_name'];
    		$target = $path_to_image . $filename. '.'. $ext;
     
    		move_uploaded_file($source,$target);
     
    		if($ext == 'jpg' || $ext == 'jpeg') {$im = imagecreatefromjpeg($path_to_image.$filename.'.'.$ext);}
    		if($ext == 'png') {$im = imagecreatefrompng($path_to_image.$filename.'.'.$ext);}
    		if($ext == 'gif') { $im = imagecreatefromgif($path_to_image.$filename.'.'.$ext);}
     
    		$ox = imagesx($im);
    		$oy = imagesy($im);
     
    		$nx = 150;
    		$ny = floor($oy *($nx/$ox));
     
    		$nm = imagecreatetruecolor($nx,$ny);
     
    		imagecopyresized($nm, $im, 0,0,0,0, $nx,$ny,$ox,$oy);
     
    		imagejpeg($nm, $path_to_min.$filename.'.'.$ext);
     
    		$nom_image = $filename.'.'.$ext;
     
    		$req = $bdd->prepare('INSERT INTO upload(nom,titre) VALUES(:nom,:titre) ');
    		$req->execute(array('nom'=>$nom_image,'titre' =>$_POST['titre']));
     
    		$req->closeCursor();
     
    		$success = 'Upload ok';
    			header("Location: index.php");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
    Essai et si tu as un problème, on pourra voir.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre actif
    Inscrit en
    Octobre 2006
    Messages
    368
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 368
    Points : 289
    Points
    289
    Par défaut
    j'ai modifier la requête après: $nom_image = $filename.'.'.$ext; comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $titre=$_POST['titre'];	
    		//enregistrement dans la base 
    			mysql_select_db($database_galerie, $galerie);
    			$insertArticles = "INSERT INTO upload (nom, titre) VALUES ('$nom_image', '$titre')";
    			mysql_query($insertArticles, $dream) or die(mysql_error());
    mais ca ne fonctionne pas.

  4. #4
    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 peux être plus précis que "ne fonctionne pas" ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre actif
    Inscrit en
    Octobre 2006
    Messages
    368
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 368
    Points : 289
    Points
    289
    Par défaut
    cà me renvoi sur une page objet non trouvé, Undefined variable: editFormAction
    le formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <form name="form" action="<?php echo $editFormAction; ?>" enctype="multipart/form-data" method="POST">	
    <label for="avatar">Charger une photo :</label>		
    <input type="file" name="avatar" id="nom"/>
    <br>
    <br>
    <label for="titre" >  Titre:  </label>		 
     <input type="text" size="50" name="titre" />
    <input type="submit" class="submit" value="Charger" />			
    </form>

  6. #6
    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
    Ou est défini editFormAction ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre actif
    Inscrit en
    Octobre 2006
    Messages
    368
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 368
    Points : 289
    Points
    289
    Par défaut
    tu as bien vu, j"ai remplacé la premlère ligne du formulaire par:
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <form action="index.php" enctype="multipart/form-data" method="post">
    normal et maintenant cà fonctionne. Merci
    mon code est-il correct d'après toi , dans les règles?
    il me reste à faire une vérification: si l'image existe déjà as-tu une idée ,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Insertion d'un champ select dans BDD et erreur dans un formulaire.
    Par mitsukk1992 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 04/12/2014, 12h03
  2. insérer champ formulaire dans table de Bdd
    Par cuhbe dans le forum Langage
    Réponses: 2
    Dernier message: 17/04/2008, 17h36
  3. [XI] Erreur insertion champ mémo dans Crystal
    Par mazu29 dans le forum SAP Crystal Reports
    Réponses: 7
    Dernier message: 24/05/2007, 17h53
  4. [MySQL] Enregistrer Infos Formulaire dans Bdd
    Par jakkihm dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 07/01/2007, 17h13
  5. Insertion code html dans bdd
    Par jeff37 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/04/2004, 15h03

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