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

Langage PHP Discussion :

[Upload] Récupérer le nom d'un fichier uploadé


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de will97
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 126
    Points : 80
    Points
    80
    Par défaut [Upload] Récupérer le nom d'un fichier uploadé
    Bonjour,
    j'ai fait un tour dans les F.A.Q. mais j'ai pas trouver grand chose.

    donc l'utilisateur evoie un fichier par un form.
    le fichier s'enregistre alor dans le dossier swf/. Jusque la c'est bon.
    mais j'ai aussi une BD MySQL willisite -> flash, cette table contient plusieur champs dont "swf" ou le nom du fichier devrait s'enregistrer (pas le fichier lui meme seulement le nom avec l'ext.) mais lorsque je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $file = basename($fichier);
    Ca renvoie un resultat nul.

    bon bref je vous donne le script du formulaire et upload.php:
    le formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <h3>Beta Upload</h3>
    <form action='upload.php' method='post'
    enctype='multipart/form-data'>
    File:<input type='file' name='file' id='file' /> <br>
    Title:<input type='text' name='title' /><br>
    Desc:<input type='text' name='desc' /><br>
    <input type='radio' name='type' value=0 />Movie<br>
    <input type='radio' name='type' value=1 />Game<br>
    <input type='submit' name='submit' value='Upload' />
    </form>
    upload.php:
    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
    <?php
    include("config.php");
    $stock = 'swf/';
    $filename = basename($_FILES['file']);
    echo $filename;
    if (move_uploaded_file($_FILES['file']['tmp_name'], $stock.$_FILES['file']['name']))
    {
    	$con = mysql_connect(************************,****,*****);
    	if (!$con)
    	{
    		die('MySQL: '.mysql_error());
    	}
    	mysql_select_db("willisite", $con);
    	$sql = "INSERT INTO flash (title, swf, desc, type) VALUES ('".$_POST['title']."', '".$filename."', '".$_POST['desc']."', ".$_POST['type'].")";
        if (!mysql_query($sql,$con))
    	{
    		die('MySQL: '.mysql_error());
    	}
    	echo "Upload of file ".$_FILES['userfile']['name']." completed";
    }
    mysql_close($con);
    ?>
    merci

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    1 138
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2002
    Messages : 1 138
    Points : 1 504
    Points
    1 504
    Par défaut
    Pour le nom du fichier tel que l'utilisateur l'a saisi, tu l'as dans cette variable:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_FILES['file']['name']

  3. #3
    Membre régulier Avatar de will97
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 126
    Points : 80
    Points
    80
    Par défaut
    Merci ca marche mais maintenant j'ai un prob de MySQL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc, type) VALUES ('Goomba World TEST', 'goombaworld.swf', 'This is for testing' at line 1
    Mais pourtant je ne voie pas d'erreur dans cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "INSERT INTO flash (title, swf, desc, type) VALUES ('".$_POST['title']."', '".$filename."', '".$_POST['desc']."', ".$_POST['type'].")";

  4. #4
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 440
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 440
    Points : 15 814
    Points
    15 814
    Par défaut
    "desc" est peut-être un mots-clé SQL réservé.
    pour le protéger mets le caractère "`" (touche "7") comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = "INSERT INTO flash (title, swf, `desc`, type) VALUES ...)";

  5. #5
    Membre régulier Avatar de will97
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mars 2007
    Messages : 126
    Points : 80
    Points
    80
    Par défaut
    Merci a tous
    J'ai seulement changer "desc" pour "descri" et tout marche a merveille.

    J'adore cliquer sur le bouton resolut

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

Discussions similaires

  1. Champ upload : récupérer le nom du fichier envoyé
    Par EriCstoFF dans le forum WebDev
    Réponses: 1
    Dernier message: 27/09/2011, 13h15
  2. Nom d'un fichier à uploader
    Par laurentSc dans le forum Langage
    Réponses: 2
    Dernier message: 02/08/2010, 10h43
  3. Comment récupérer le chemin d'un fichier uploadé
    Par INF972 dans le forum XMLRAD
    Réponses: 0
    Dernier message: 11/12/2008, 17h29
  4. [Upload] débutant, récupérer nom d'un fichier uploadé
    Par psgman113 dans le forum Langage
    Réponses: 1
    Dernier message: 08/05/2007, 18h24
  5. Réponses: 1
    Dernier message: 26/07/2006, 03h47

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