quel type de champs mysql pour une variable type file ?

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

Zikou
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 170
Inscription: Lun Aoû 11, 2008 18:23

quel type de champs mysql pour une variable type file ?

Message le Dim Juil 05, 2009 18:24

Bonjour, j'essaie d'uploader depuis un formulaire le lien d'une image dans une table mysql, j'ai bien mon id qui s'incrémente, mais mon champ userfile reste vide j'ai mis un type BLOB ?? est ce le bon type ??


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 5072
Inscription: Mer Nov 23, 2005 10:38

Re: quel type de champs mysql pour une variable type file ?

Message le Dim Juil 05, 2009 18:37

Logiquement si c'est pour mettre l'url du fichier, tu peux te débrouiller pour qu'un varchar 255 suffise. Un blob c'est peut-être (même sûrement) un peu trop pour juste une url.

Pour le reste on peut voir ton bout de code ?


j-mi
WRInaute accro
WRInaute accro
 
Messages: 2817
Inscription: Mar Mai 17, 2005 22:45

Re: quel type de champs mysql pour une variable type file ?

Message le Lun Juil 06, 2009 3:16

tu es sur que ton php code envoie bien le lien de ton image?

Zikou
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 170
Inscription: Lun Aoû 11, 2008 18:23

Re: quel type de champs mysql pour une variable type file ?

Message le Lun Juil 06, 2009 17:45

Bonjour, voici le code de mon formulaire :
Code: Tout sélectionner
<form method="post" action="add-image.php" enctype="multipart/form-data">
     <input type="file" name="userfile"  /><br />
     <label for="titre">nom du fichier (max 50 caractères):</label><br />
     <input type="text" name="name" value="Titre du fichier"  /><br />
     
     <input type="submit" name="submit" value="Envoyer" />
</form>


et voici le code de la récupération des variables et l'envoie vers la table :

Code: Tout sélectionner
if(isset($_POST['userfile']))      $userfile=$_POST['userfile'];
else      $userfile="";

if(isset($_POST['name']))      $name=$_POST['name'];
else      $name="";



       // connexion à la base
$serveur='xxxxx'; // serveur
$user='xxxxxxx'; // nom d'utilisateur
$password='xxxxxxx'; // mot de passe
$base='xxxxxxxxx'; // base

// Connexion à la base
$connexion = mysql_connect("$serveur","$user","$password") or die ("Impossible de se connecter à la base de données");
// sélection de la base
mysql_select_db("$base",$connexion);
$db = mysql_connect("xxxxxxxxxxx", "xxxxxxxxx","xxxxxxxxx")  or die('Erreur de connexion '.mysql_error());
// sélection de la base 

    mysql_select_db('xxxxxxxx',$db)  or die('Erreur de selection '.mysql_error());
// on écrit la requête sql
    $sql = "INSERT INTO image_tbl(id, userfile, name) VALUES('','$userfile','$name')";   
// on insère les informations du formulaire dans la table
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
       // on affiche le résultat pour le visiteur
    echo 'et les infos ont été ajoutées.';

    mysql_close();  // on ferme la connexion


mon champs name est bien écrit, mais mon champs userfile est vide ??


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 5072
Inscription: Mer Nov 23, 2005 10:38

Re: quel type de champs mysql pour une variable type file ?

Message le Lun Juil 06, 2009 20:57

Bein un champ de type file, tu le récupère non dans le tableau $_POST mais dans le tableau $_FILE (après avoir vérifié que tu avais bien mis l'attribut "enctype=multipart/form-data".

Mais cela ne suffira pas, un uploade de fichier ne se traite absolument pas comme ça : http://antoine-herault.developpez.com/tutoriels/php/upload/

Zikou
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 170
Inscription: Lun Aoû 11, 2008 18:23

Re: quel type de champs mysql pour une variable type file ?

Message le Mar Juil 07, 2009 19:52

ok merci pour le lien, mais ça concerne l'upload sur le serveur pas sur une bdd ? et une petite question il est ou le fichier temporaire creer dans l'upload, je comprend pas trop, il est sur mon pc ?

Robinson
WRInaute accro
WRInaute accro
 
Messages: 1855
Inscription: Mar Oct 25, 2005 23:10

Re: quel type de champs mysql pour une variable type file ?

Message le Mar Juil 07, 2009 20:49

Tu veux stoker le lien d'une image que tu n'enregistres pas sur ton serveur mais qui provient du pc d'une personne ???
C'est fort ça :)


Va voir le lien ci-dessus. Enregistre le fichier sur ton serveur et ensuite le nom du fichier dans ta base de données...


skyll
WRInaute passionné
WRInaute passionné
 
Messages: 794
Inscription: Ven Oct 14, 2005 15:56

Re: quel type de champs mysql pour une variable type file ?

Message le Mer Juil 08, 2009 0:27

Robinson a écrit:Tu veux stoker le lien d'une image que tu n'enregistres pas sur ton serveur mais qui provient du pc d'une personne ???C'est fort ça :)...


Oui mais possible quand même :mrgreen:
même si c'est carrément pas une méthode conseillées, on peut le faire si il y à réellement un besoin...
y' même un post sur wri qui donnais l'une des solution si je me rapelle.. je vais fouiller
et j'édite si je retrouve :mrgreen:

Zikou
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 170
Inscription: Lun Aoû 11, 2008 18:23

Re: quel type de champs mysql pour une variable type file ?

Message le Mer Juil 08, 2009 17:29

Bonjour tout le monde,
Tu veux stoker le lien d'une image que tu n'enregistres pas sur ton serveur mais qui provient du pc d'une personne ???
je sais pas ou t'as lu ça Robinson... Skyll te casse pas la tête c'est hors sujet.
Je veux pouvoir changé facilement l'image d'une page. J'ai trouvé une autre solution, sans bdd : j'upload via une connexion ftp, je la renomme au passage.


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités