|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Ressources humaines Inscription : décembre 2012 Messages : 2 ![]() |
Bonjour à tous,
J'ai créé une page administrateur pour que des personnes puissent télécharger des documents sur mon site et une page ou s'affichent les données de la base sql. Tout fonctionne, le titre, la date etc... rentre bien dans ma base sql. J'ai bien le fichier qui s'est téléchargé dans un dossier "upload". Par contre, dans ma page où s'affichent les données le lien vers le fichier pdf n'apparaît pas. je pense qu'il doit y avoir un script spécial pour afficher un lien provenant d'une base sql. J'ai aussi dans ma table , dans la colonne "fichier" [BLOB-Oo], comme si le lien n'était pas rentré et pourtant le fichier est bien téléchargé dans le dossier upload... Je n'ai aucun message d'erreur. Est-ce que quelqu'un peut m'aider ? Je vous remercie d'avance Une novice sur ce forum |
|
|
00
|
|
|
#2 | |
![]() ![]() |
Bonjour,
à vue de nez (compte tenu que tu ne nous donnes pas de code...) : Citation:
2/ Il faut penser à ENREGISTRER le NOM du FICHIER dans ce champ. Ceci pourrait t'intéresser : Système de Gestion-Affichage de Nouvelles
__________________
"Ce qui se conçoit bien s'énonce clairement - Et les mots pour le dire arrivent aisément." Nicolas Boileau-Despréaux, Homme de lettres français (1636-1711), principal théoricien de l'esthétique classique. "Quand le sage montre la lune, le sot regarde le doigt." Confucius, Homme d'Etat et philosophe chinois (551-479 av. J.-C). |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Ressources humaines Inscription : décembre 2012 Messages : 2 ![]() |
Merci Jérôme,
J'ai regardé le module que tu me proposes, il est complet et complexe, je te remercie pour tout ce travail. Cependant j'étais arrivé presque au bout de ma page administrateur alors si tu peux me dire ce qui cloche dans mon code, ce serait très gentil ! Nom de la Table : "document" colonne id : mediumint(8),unsigned,auto-increment, primary key date_doc : timestamp, current_timestamp,on update current_timestamp rubrique :varchar(255) fichier : blob,binary (j'ai essayé avec varchar, le lien vers le fichier ne rentre pas non plus dans la base, mais le fichier se télécharge bien dans mon dossier upload) MAX_FILE_SIZE,int(255) Code de la page gestion_document.php <body> <div id="listing"> </td> <td class="contenu"> <h1>Administration des documents</h1> <br /><br /> <form action="administration.php" method="post" name="doc" id="doc" enctype="multipart/form-data" > <table border="0" align="center" cellpadding="3" cellspacing="1"> <tr> <td><strong>Rubrique :</strong></td> <td> <select name="rubrique" class="form_select" id="rubrique"> <option value='compte_rendu'>Compte rendu</option> <option value='programme'>Programme</option> </select> </td> </tr> <tr> <td width="80"><strong>Titre :</strong> </td> <td><input name="titre" type="text" class="form_champ" id="titre" value="" style="width:300px;" /></td> </tr> <tr> <td width="80"><strong>Fichier :</strong> </td> <td><input name="fichier" type="file" class="form_champ" id="fichier" > <input type="hidden" name="MAX_FILE_SIZE" value="200000"><!--limitation du fichier à 200 ko--> </tr> <tr> <td><strong> Date :</strong></td> <td> <input type="date" name="date_doc" id="date_doc" disabled="true" value=<?php $date=date("d-m-Y");Print("$date");?>></td> </tr> <tr align="center"> <td colspan="2"><input name="submit" type="submit" class="form_bouton" id="submit" value="Valider" /> <input name="cancel" type="button" class="form_bouton" id="cancel" value="Annuler" onclick="javascript:window.location.href='gestion_document.php';" /></td> </tr> </table> </form> </td> </tr> </table> </div> </body> code de la page administration.php <?php $dossier = 'upload/'; $fichier = basename($_FILES['fichier']['name']); $taille_maxi = 200000; $taille = filesize($_FILES['fichier']['tmp_name']); $extensions = array('.pdf'); $extension = strrchr($_FILES['fichier']['name'], '.'); //Début des vérifications de sécurité... if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau { $erreur = 'Vous devez télécharger un fichier de type pdf'; } if($taille>$taille_maxi) { $erreur = 'Le fichier est trop gros...'; } if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload { //On formate le nom du fichier ici... $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier); if(move_uploaded_file($_FILES['fichier']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné... { echo 'téléchargement effectué avec succès !'; } else //Sinon (la fonction renvoie FALSE). { echo 'Echec de du téléchargement !'; } } else { echo $erreur; } ?> <?php include ("config.php"); $req=$bdd->prepare('INSERT INTO document(rubrique,titre,fichier,MAX_FILE_SIZE) VALUES(?,?,?,?)'); $req->execute(array( mysql_real_escape_string(strtoupper(($_POST['rubrique']))), mysql_real_escape_string($_POST['titre']), mysql_real_escape_string($_POST['fichier']), mysql_real_escape_string($_POST['MAX_FILE_SIZE']))); header('Location:gestion_document.php'); ?> code de la page CR.php (où s'affichent les données) <div id="listing"> <h3>Compte rendu</h3> <?php include ("config.php"); $req = $bdd->query('SELECT rubrique,titre,fichier,DATE_FORMAT(date_doc,\'%d/%m/%Y\') AS date_doc_fr FROM document ORDER BY date_doc DESC'); while ($donnees = $req->fetch()) { ?> <strong> Date : </strong> <?php echo $donnees['date_doc_fr'];?><br/> <strong>Rubrique : </strong> <?php echo htmlspecialchars($donnees['rubrique']);?> <strong>Titre : </strong> <?php echo htmlspecialchars($donnees['titre']);?><br/> <strong> Fichier : </strong> <?php echo htmlspecialchars($donnees['fichier']);?> <br/><hr /> <?php } ?> </div> Donc toutes les données s'affichent sauf le lien vers le fichier acrobat qui est dans le dossier "upload" et qui est rentré dans la base dans la colonne "fichier" Si tu trouves où ça cloche, ce serait génial ! JKe te souhaite de joyeuses fêtes de fin d'année et merci déjà de m'avoir répondu ! |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com