Je réalise un site web qui permet à un étudiant connecté de verser son mémoire de recherche dans la base de données.
Seulement, deux problèmes :
- Mon simple code d'upload ne fonctionne visiblement pas,
- Je ne sais pas comment faire en sorte de récupérer les informations de l'étudiant connecté pour relier cet étudiant à son mémoire.
Dans ma base :
Table etudiant : NumEtu (auto), Nom_Utilisateur, Motdepasse et d'autres informations sur l'étudiant (dont son CV, qu'il faudrait également uploader soi-même),
Table memoire : NumMemoire (auto), Titre et d'autres informations,
Table ecrit : NumEtu, NumMemoire et la date de soutenance qui me permet de relier le mémoire et l'étudiant.
Mon code :
<form action="verser_memoire.php" method="post" enctype="multipart/form-data">
<p>Titre du mémoire : <input type-text size=50 name="t"/></p>
<p> Résumé du mémoire : <textarea name="r" cols="50" rows="5"></textarea> </p>
<p> Mot-clef : <select name="m"> </p>
<option value="IDE">IDE</option>
<option value="ARI">ARI</option>
<option value="EIE">EIE</option>
</select> <p>
<p> Document à charger : <input type="file" name="d"/> </p>
<input type="submit" value="Valider"/>
<input type="reset" value="Annuler"/>
</form>
<?php
if(!empty($_POST['t']) || !empty($_POST['r']) || !empty($_POST['m']) || !empty($_POST['d'])) {
$titre = $_POST['t'];
$resume = $_POST['r'];
$motclef = $_POST['m'];
$document = $_POST['d'];
$n_fic=basename($fic['Nom_Utilisateur']);
//$ref_fic=$numetu."_".$n_fic; <= on accède à ce formulaire uniquement dans le cadre de la connexion d'un utilisateur donc il est connu.
$ref_fic=$n_fic;
$fic_destination = "/memoires/". $ref_fic ;
if (!move_uploaded_file($fic['tmp_name'],$fic_destination)) {
echo "Erreur de téléchargement !!";
exit();
}
$req="Insert into memoire values ('', \"$titre\", \"$resume\", \"$motclef\", \"$document\", \"$ref_fic\")";
$connexion=mysql_connect("localhost","root","");
if (!$connexion)
{echo "Il y a eu un problème de connexion. Merci de vérifier vos paramètres de connexion puis de réessayer. <br>";
exit();}
if (!mysql_select_db("baseasso2",$connexion))
{echo "Problème de sélection de base. Merci de vérifier le nom de votre base <br>" ;
exit();}
$resultat=mysql_query($req,$connexion);
if (!$resultat)
{echo "Il y a un problème avec la requête '$req'. <br>";
exit();}
}
?>
Sachez que cette page n'est accessible que si l'étudiant est connecté, grâce au code suivant avant mon Doctype :
<?php
session_start();
if(!isset($_COOKIE['NumEtu'])) {header("Location: connexion.php");}
?>
Si vous pouviez me dépanner, ça m'aiderait beaucoup !!!! Par avance, merci.