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 :

Erreur dans le code pour faire un Upload dans mysql


Sujet :

PHP & Base de données

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Liban

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2014
    Messages : 38
    Points : 16
    Points
    16
    Par défaut Erreur dans le code pour faire un Upload dans mysql
    Bonjour a tous,
    J'ai creer un fichier.php s'appele add.php qui sert a ajouter l'id dans l'url a travers une fonction javascript et on passe vers addFile.php.
    Cette page sert a ajouter l'id d'un cours avec un fichier (upload) dans mysql.
    dans cette page, l'url est: .../addFile.php?courseId=1
    Lorsque je "BROWSE" un fichier et on cliquant sur Bouton upload j'ai eu une erreur: Undefined varible: courseId.
    Alors comment je peut envoyer de nouveaux le course Id dans le fichier upload.php.
    Le code est le suivant:
    La premiere page addFile.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
    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
    <?
    session_start();
    if(!session_is_registered(myusername)){
    header("location:index.html");
    }
    ?>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>File Upload</title>
    <style type="text/css">
    .c {
    	text-align: center;
    }
    </style>
    </head>
     
    <body>
     
     
      <p>&nbsp;</p>
      <p>
      <form action="upload.php" method="POST" enctype="multipart/form-data" class="c">
      <p><img src="../files/earth-upload-icon.jpg" width="168" height="168"></p>
      <p> 
        Course ID: 
        <?php
     
    $host="localhost"; // Host name 
    $username="root"; // Mysql username 
    $password=""; // Mysql password 
    $db_name="***"; // Database name 
    $tbl_name="***"; // Table name 
     
    // Connect to server and select database.
    mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
    mysql_select_db("$db_name")or die("cannot select DB");
    session_start();
    $username=$_SESSION['myusername'];
    //echo $_SESSION['myusername']; // will echo out the username
    $courseId = $_REQUEST['courseId'];
    echo $courseId;
    $action=$_REQUEST['action'];
    ?>
        ;
        Course Action: <?php echo $action ?>;
        </p>
     
      </p>
      <p> File:
        <input type="file" name="file"><br> 
        <input type="Submit" id="submitId" value="Upload File">
    </p>
    </form>
    </body>
    </html>
    La bouton upload:

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <?php 
    $host="localhost"; // Host name 
    $username="root"; // Mysql username 
    $password=""; // Mysql password 
    $db_name="***"; // Database name 
    $tbl_name="***"; // Table name 
     
      //This is the directory where files will be saved 
     $target = "C:\wamp\www\***\upload\upload"; 
     $target = $target . basename( $_FILES['file']['name']); 
     
     //This gets all the other information from the form 
     $courseId=$_REQUEST['courseId']; 
     $file=($_FILES['file']['name']); 
     $action=$_GET['action']; 
     
     // Connects to your Database 
     mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
    mysql_select_db("$db_name")or die("cannot select DB");
    session_start();
    $username=$_SESSION['myusername'];
     //Writes the information to the database 
     mysql_query("INSERT INTO $tbl_name(course_id, file, action) VALUES ('$courseId', '$file', '$action')") ; 
     
     //Writes the photo to the server
     if(move_uploaded_file($_FILES['file']['tmp_name'], $target)) 
     { 
     
     //Tells you if its all ok 
     echo "The file ". basename( $_FILES['file']['name']). " has been uploaded"; 
     } 
     else { 
     
     //Gives and error if its not 
     echo "Sorry, there was a problem uploading your file."; 
     } 
     
     ?>

  2. #2
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Liban

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2014
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    En d'autres termes, je veux utiliser les variables de la page addFile.php presenter dans l'url, dans la page suivante qui est upload.php.

  3. #3
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Utilise les variables de session.
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  4. #4
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Liban

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2014
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    Pouvez-vous m'aider, en corrigant le code. Je suis nouveau avec php et session.
    Merci pour votre reponse.

  5. #5
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    En haut de addFile :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    session_start();
    if (!isset($_SESSION['myusername'])) {
        header("location:index.html");
    }
     
    $_SESSION['get'] = $_GET;
    Au passage tu remarqueras que j'ai enlevé la fonction "session_is_registered" qui a été supprimé en php 5.4 et donc qu'il ne faut plus utilisé.

    En haut de upload.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    session_start();
    $get = $_SESSION['get'];
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

  6. #6
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2014
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Liban

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Avril 2014
    Messages : 38
    Points : 16
    Points
    16
    Par défaut
    Rien est ajouter.
    Mais je veux ajouter l'id du cours dans upload.php et pas la session du user qui a fait un login.
    Merci.

  7. #7
    Membre expert
    Avatar de Spartacusply
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    1 723
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2011
    Messages : 1 723
    Points : 3 274
    Points
    3 274
    Par défaut
    Tu n'as pas corrigé le reste de ton code en fonction de ce que j'ai posté avant. SI je définie "$get", c'est bien pour s'en servir par la suite. Regarde ce qu'elle contient (en utilisant la fonction "var_dump" par exemple).

    Il ne faut jamais utiliser $_REQUEST pour accéder à une variable.
    Un message utile vous a aidé ? N'oubliez pas le

    www.simplifions.fr - Simplifier vos comptes entre amis !

Discussions similaires

  1. [AC-2010] Récuperer un total dans une requête pour faire un calcul dans un champ
    Par infoprev dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 20/02/2012, 09h07
  2. Réponses: 2
    Dernier message: 21/05/2011, 13h30
  3. Faire appel dans le code cs à un control créé dans le code XAML
    Par TERRIBLE dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 26/08/2010, 21h08
  4. Probleme pour faire le menage dans son code
    Par Nikogram dans le forum Windows Presentation Foundation
    Réponses: 4
    Dernier message: 18/12/2009, 15h49
  5. Réponses: 2
    Dernier message: 26/04/2008, 11h20

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