Comment inserer la photo dans une BDD Mysql méthode PDO
coco77777
Messages postés
79
Statut
Membre
-
coco77777 Messages postés 79 Statut Membre -
coco77777 Messages postés 79 Statut Membre -
Bonjour,
Je voudrais récupérer la photo dans une bdd en sachant que l'ai une table qui s'appelle photo avec des colonnes: id, titre, image, date, commentaire, latitude, longitude.
J'ai un formulaire comme ceci:
<form>
<label for="icone">Icône du fichier (JPG, PNG ou GIF | max. 15 Ko) :</label><br />
<input type="file" name="icone1" id="icone1" /><br />
<label for="titre">Titre du fichier (max. 50 caractères) :</label><br />
<input type="text" name="titre" value="Titre du fichier" id="titre" /><br />
<label for="commentaire">Description de votre fichier (max. 255 caractères) :</label><br />
<textarea name="commentaire" id="commentaire"></textarea><br />
<input type="submit" name="submit" value="Envoyer" />
</form>
Si quelqu'un pourra m'aider ça sera très gentil.
Merci d'avance
Je voudrais récupérer la photo dans une bdd en sachant que l'ai une table qui s'appelle photo avec des colonnes: id, titre, image, date, commentaire, latitude, longitude.
J'ai un formulaire comme ceci:
<form>
<label for="icone">Icône du fichier (JPG, PNG ou GIF | max. 15 Ko) :</label><br />
<input type="file" name="icone1" id="icone1" /><br />
<label for="titre">Titre du fichier (max. 50 caractères) :</label><br />
<input type="text" name="titre" value="Titre du fichier" id="titre" /><br />
<label for="commentaire">Description de votre fichier (max. 255 caractères) :</label><br />
<textarea name="commentaire" id="commentaire"></textarea><br />
<input type="submit" name="submit" value="Envoyer" />
</form>
Si quelqu'un pourra m'aider ça sera très gentil.
Merci d'avance
A voir également:
- Comment inserer la photo dans une BDD Mysql méthode PDO
- Insérer une vidéo dans powerpoint - Guide
- Google photo - Télécharger - Albums photo
- Insérer signature word - Guide
- Insérer liste déroulante excel - Guide
- Comment insérer une table des matières dans word - Guide
5 réponses
J'ai une autre page php qui récupère les données :
// RECUPERATION DES PHOTOS
echo "Page de récupération des données :<br><br>";
set_time_limit("30");
/* remet le compteur à zéro et ajoute 30 secondes au temps déjà écoulé */
ignore_user_abort();
/* Si l'utilisateur arrête le téléchargement en cours, ou se déconnecte, le script php se terminera quand même */
$nom_fichier = $_FILES['icone1'] ['name'];
/* nom et adresse d'origine du fichier sur le disque utilisateur */
$taille = $_FILES['icone1'] ['size'];
/* taille du fichier en octets */
$tmp = $_FILES['icone1'] ['tmp_name'];
/* nom et adresse du fichier temporaire sur le serveur (fichier détruit à la fin du script) */
$type = $_FILES['icone1'] ['type'];
/* type mime du fichier */
$erreur = $_FILES['icone1'] ['error'];
/* code d'erreur associé au téléchargement */
// controle taille
//$maxwidth=550;
//$maxheight=550;
//$image_sizes = getimagesize($_FILES['icone1']['tmp_name']);
//if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight) $erreur = "Image trop grande";
echo "Nom d'origine => $nom_fichier <br>";
echo "Taille => $taille octets <br>";
echo "Adresse temporaire sur le serveur => $tmp <br>";
echo "Type de fichier => $type <br>";
echo "Code erreur => $erreur. <br>";
$adresse_destination = './photo/'.$nom_fichier;
move_uploaded_file($tmp, $adresse_destination);
/* $tmp = on prend le fichier temporaire sur le serveur (le fichier est détruit à la fin du script) */
/* $adresse_destination = c'est là où le fichier sera sauvegardé sur le serveur, ici le répertoire www/pict/ */
/* dans $adresse_destination on a conservé le nom du fichier d'origine : bien entendu il faut gérer et changer
ce nom pour éviter que deux utilisateurs envoient deux fichiers différents portant le même nom.
Il convient aussi de vérifier que l'extension du fichier est celle qui est attendue */
echo "Adresse destination => $adresse_destination<br><br>";
// controle extention
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
//1. strrchr renvoie l'extension avec le point (« . »).
//2. substr(chaine,1) ignore le premier caractère de chaine.
//3. strtolower met l'extension en minuscules.
$extension_upload = strtolower( substr( strrchr($_FILES['icone1']['name'], '.') ,1) );
if ( in_array($extension_upload,$extensions_valides) ) echo "Extension correcte <br/>";
// RECUPERATION DES PHOTOS
echo "Page de récupération des données :<br><br>";
set_time_limit("30");
/* remet le compteur à zéro et ajoute 30 secondes au temps déjà écoulé */
ignore_user_abort();
/* Si l'utilisateur arrête le téléchargement en cours, ou se déconnecte, le script php se terminera quand même */
$nom_fichier = $_FILES['icone1'] ['name'];
/* nom et adresse d'origine du fichier sur le disque utilisateur */
$taille = $_FILES['icone1'] ['size'];
/* taille du fichier en octets */
$tmp = $_FILES['icone1'] ['tmp_name'];
/* nom et adresse du fichier temporaire sur le serveur (fichier détruit à la fin du script) */
$type = $_FILES['icone1'] ['type'];
/* type mime du fichier */
$erreur = $_FILES['icone1'] ['error'];
/* code d'erreur associé au téléchargement */
// controle taille
//$maxwidth=550;
//$maxheight=550;
//$image_sizes = getimagesize($_FILES['icone1']['tmp_name']);
//if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight) $erreur = "Image trop grande";
echo "Nom d'origine => $nom_fichier <br>";
echo "Taille => $taille octets <br>";
echo "Adresse temporaire sur le serveur => $tmp <br>";
echo "Type de fichier => $type <br>";
echo "Code erreur => $erreur. <br>";
$adresse_destination = './photo/'.$nom_fichier;
move_uploaded_file($tmp, $adresse_destination);
/* $tmp = on prend le fichier temporaire sur le serveur (le fichier est détruit à la fin du script) */
/* $adresse_destination = c'est là où le fichier sera sauvegardé sur le serveur, ici le répertoire www/pict/ */
/* dans $adresse_destination on a conservé le nom du fichier d'origine : bien entendu il faut gérer et changer
ce nom pour éviter que deux utilisateurs envoient deux fichiers différents portant le même nom.
Il convient aussi de vérifier que l'extension du fichier est celle qui est attendue */
echo "Adresse destination => $adresse_destination<br><br>";
// controle extention
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png' );
//1. strrchr renvoie l'extension avec le point (« . »).
//2. substr(chaine,1) ignore le premier caractère de chaine.
//3. strtolower met l'extension en minuscules.
$extension_upload = strtolower( substr( strrchr($_FILES['icone1']['name'], '.') ,1) );
if ( in_array($extension_upload,$extensions_valides) ) echo "Extension correcte <br/>";
Il faut le faire en html/php :
http://www.siteduzero.com/tutoriel-3-37674-upload-de-fichiers-par-formulaire.html
http://www.siteduzero.com/tutoriel-3-37674-upload-de-fichiers-par-formulaire.html
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci. Oui, j'ai une BDD et les photos télécharger sont dirigé d'un fichier temporaire dans un fichier que j'ai crée.
Justement je cherche la méthode comment les enregistrer dans ma BDD.
J'ai une table photo,avec plusieurs colonnes ( titre, date, commentaire, latitude, longitude etc)
J'aurais ensuite besoin latitude et longitude pour la géolocalisation sur la carte .
Justement je cherche la méthode comment les enregistrer dans ma BDD.
J'ai une table photo,avec plusieurs colonnes ( titre, date, commentaire, latitude, longitude etc)
J'aurais ensuite besoin latitude et longitude pour la géolocalisation sur la carte .
Très bien donc à la fin de ton fichier .php (dans lequel tu récupères ton fichier), rajoutes ceci :
(c'est bien une bdd mysql ?)
et dans ton fichier ou il y a le formulaire :
remplace :
(c'est bien une bdd mysql ?)
$host = "localhost";
$user = "identifiant_de_la_bdd";
$passw = "mot_de_passe_de_la_bdd";
$bdd = "nom_de_la_bdd";
$dbConn = mysql_connect($host,$user,$passw);
mysql_select_db($bdd,$dbConn);
$latitude = "test_lat";
$longitude = "test_long";
mysql_query("INSERT INTO photo (titre, date, commentaire, latitude, longitude) VALUES ('".$_POST['titre']."','".time()."','".$_POST['commentaire']."','".$test_lat."','".$test_long."')") or die (mysql_error());
et dans ton fichier ou il y a le formulaire :
remplace :
<form>par :
<form action="ton_fichier.php" method="post">