gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006
-
8 mai 2006 à 23:50
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006
-
9 mai 2006 à 14:10
bonjour,
je sollicite votre aide dans le cadre de la cration d'un site internet pour un departement d'anesthesie / reanimation dont je fait partie.
Sur ce site une des section contient une liste de protocoles medicaux non confidentiels. Je les uploads selon mes dispos quand on me les fournit.
Mais pour simplifier et surtout augmenter la reactivité je cherche a donner un moyen simple pour les auteurs de protocoles, afin qu'ils puissent eux meme upload leurs protocoles dans un dossier donné et qu'un lien se crée automatiquement dans la page protocole.
Dans une page apres identification
je proposerait un formulaire du type :
Catégorie de protocole
Titre du protocole
Fichier a telecharger (avec une box permetant le parcour du hdd de l'emeteur.
Et je voudrait donc que le fichier se telecharge dans le dossier protocole du serveur
Et qu'un lien se crée dans la page protocole avec le bon titre et dans la bonne catégorie.
j'ai pensé eventuelement a utiliser une bdd pour gerer les titre / liens.
mais je n'ai pas trouvé de scripts d'upload que j'arriverai a adapter avec mes queques connaissances en php.
platon179
Messages postés237Date d'inscriptionlundi 20 mai 2002StatutMembreDernière intervention22 juillet 20112 9 mai 2006 à 08:56
Salut,
Effectivement le plus simple est d'utiliser une base de données... Ca sera à mon avis plus simple que de faire la modification de ton fichier HTML à chaque ajout d'un protocole. Une fois que le fichier a été correctement uploadé, tu ajoutes une ligne dans ta base de données, qui liste tous les protocoles qui ont été uploadés sur le serveur...
Recherche un tuto sur les bases SQL, tu verras que c'est vraiment pas compliqué... Cherche sur ce site, tu trouveras certainement quelque chose, ou alors phpdebutant.org est pas mal en ce qui concerne l'apprentissage SQL...
Teclis01
Messages postés1423Date d'inscriptionmardi 14 décembre 2004StatutMembreDernière intervention29 décembre 20124 9 mai 2006 à 09:39
Je crois qu'il cherches plus a avoir un script d upload plutot que un
tuto sur les requetes SQL ... je pourrais te filer un script d upload
mais je l ai pas sur moi il est sur mon pc perso donc pas avant ce soir
Pour ce qui est de la creation de tes liens tout ça suffit d'un peu de logic et un peu d huile de coude ! llooll
platon179
Messages postés237Date d'inscriptionlundi 20 mai 2002StatutMembreDernière intervention22 juillet 20112 9 mai 2006 à 09:42
Disons qu'il lui faut les deux alors xD
Apres l'upload, il pensait a stocker la liste des protocoles dans une bdd, ce qui est pas une mauvaise idée en soit ;)
Vous n’avez pas trouvé la réponse que vous recherchez ?
}elseif($Size >= 1024*1024) { // Pour les Mégas octets (pas trop rare je pense ...)
$Size = round(($Size / (1024*1024)),2) . ' Mo';
}elseif($Size >= 1024) { // Pour les Kilo octets (les moins rares);
$Size = round(($Size/1024),2) . ' Ko';
}else { // Pour les moins d'un Kilo octet (plutôt rare je dirais...)
$Size .= ' Octets';
}
// Pour l'affichage de la date j'utilise strtime ce qui permet de faire un affichage en français.
setlocale(LC_TIME,\"fr\");
// Quand j'ai fait tout ça j'affiche le nouveau nom du fichier avec ça taille et la date de la dernière modification.
echo '----
'.$NewFileName.', '.strftime("%A, %d.%m.%Y ",filemtime($dir.$file)).', '.$Size.', ';
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006 9 mai 2006 à 10:58
Pour ton script, je viens de test et 2 choses :
1 il se fige lors de l'upload du fichier en me laissean veuillez patienter. j'ai bien chmod en 777 le dossier du script, créé un dossier "up_dossier" chmodé en 777 a la racine du site puis dans le dossier ou j'ai mis ce script mais rien n'y change, quand on clique sur upload il reste figé en nous indiquant veuillez patienter. Auriez vous une solution ?
2 il ne permet pas d'inscrire son propre nom de protocole, il par du nom de fichier pour le creer. Sachant que des gens vraiment debutant utiliseront ce script, ils ne sauront pas tous rennomer les fichiers pour avoir un titre correct, donc il me faut pourvoir entrer cette variable la dans la page de creation des liens.
Mais sinon, ton script si j'arrive a le faire marché pourrait en effet servir de base a ce que je veux faire. Je vois qu'il n'utilise pas de base de donnée mais gere les variable directement entre les pages, je ne sais aps si c'est mieux ou moins bien que la bdd ?
Enfin, pour répondre aux messages précédents, en effet, je cherche un script d'upload plutot qu'un tuto pour les requetes sql, et le but est que je n'ai aps a intervenir, donc si utilisation de bdd, que le script ajour lui meme les infos du fichier dans la bdd.
cs_spyro666
Messages postés137Date d'inscriptionlundi 10 janvier 2005StatutMembreDernière intervention28 août 2007 9 mai 2006 à 11:28
En fait c'est normal qu'il reste figé... Tout dépend de la taille de ton fichier il faut penser que la vitesse d'upload est généralement 10 fois inférieure à la vitesse de download. Ce qui fait que si tu as du 5 M (soit 600 Ko en down) tu auras du 500k en up (soit 60ko) donc pour un fichier d'un méga il te faut a peu près 16 secondes pour qu'il soit uploader, mais ça on ne peux rien y faire.
Ensuite pour le nom c'est pas vraiment un problème, je posterai ça cette après midi quand j'aurai le temps.
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006 9 mai 2006 à 11:33
Non, ca vient pas de la, j'y est pensé. Deja au domicile, ma ligne est en 4mb/1mb, et a l'hopital, nous sommes fibrés, donc avec une bp bien plus grande.
Ensuite, j'ai fait l'essai avec des fichiers de 30 à 100ko, donc tout petit juste pour test, et le script reste bien figé et n'upload rien.
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006 9 mai 2006 à 11:42
Petits changements : sous firefox, aparement le script marche. Mais pas sous internet explorer.
Sinon sur la page protocoles.php, il affiche bien les fichers mais sans liens (enfin ca doit etre simple a résoudre ca je pense).
Comment faire pourque ca marche aussi sous ie svp ?
cs_spyro666
Messages postés137Date d'inscriptionlundi 10 janvier 2005StatutMembreDernière intervention28 août 2007 9 mai 2006 à 11:57
Euh oui effectivement j'ai oublier de mettre les liens à la génération des cellules ^^' . Encore qqch à arranger. Je met ça dès que j'ai fini ma partie d'age.
}
?>
<form method="post" enctype="multipart/form-data">
Fichier à uploader :, ,
----
Nom de fichier désiré :, ,
----
,
----
Voir tous les fichiers uploaders
</form>
Ainsi que :
<?php
/* page d'affichage des fichiers */
?>
Protocoles médicaux non-confidentiels,
<?php
$dir = 'up_dossier/';
if($handle = opendir($dir)) {
echo '----
Nom du fichier, Dernière modification, Taille, ';
while($file = readdir($handle)) {
if(is_file($dir.$file)) {
// je sépare le nom du fichier par les points afin de pouvoir afficher un nom convenable sans extension.
$FileName = explode(\".\",$file);
unset($FileName[count($FileName)-1]);
$count = count($FileName);
for($i = 0;$i < $count;$i++) {
$NewFileName .= $FileName[$i];
}
// Je récupère la taille du fichier
$Size = filesize($dir.$file);
if($Size >= 1024*1024*1024*1024) { // Pour les Terra octets (portabilité oblige ^^')
}elseif($Size >= 1024*1024) { // Pour les Mégas octets (pas trop rare je pense ...)
$Size = round(($Size / (1024*1024)),2) . ' Mo';
}elseif($Size >= 1024) { // Pour les Kilo octets (les moins rares);
$Size = round(($Size/1024),2) . ' Ko';
}else { // Pour les moins d'un Kilo octet (plutôt rare je dirais...)
$Size .= ' Octets';
}
// Pour l'affichage de la date j'utilise strtime ce qui permet de faire un affichage en français.
setlocale(LC_TIME,\"fr\");
// Quand j'ai fait tout ça j'affiche le nouveau nom du fichier avec ça taille et la date de la dernière modification.
echo '----
'.$NewFileName.', '.strftime("%A, %d.%m.%Y ",filemtime($dir.$file)).', '.$Size.', ';
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006 9 mai 2006 à 12:18
Merci.
2 petits problemes encore :
Ne marche toujours pas sous internet explorer, alors que ok sous mozilla, je ne vois helas pas pourquoi ???
Et pour l'enregistrement du nom de fichier dans le tableau, il y a un soucis : il ajoute a chaque fois le nom du fichier précédent au nom que j'inscrit :
gandalf76fr
Messages postés20Date d'inscriptionlundi 13 février 2006StatutMembreDernière intervention 3 octobre 2006 9 mai 2006 à 12:35
Le $NewFileName = ''; arrange en effet le probleme des noms de fichier. Merci beaucoup.
Ensuite pour la commande a suprimer, non je ne l'ai aps suprimée, il faut le faire ? cela permetrai il que ca marche sous ie ?
enfin si ce n'est pas trop demander, est il posssible d'ajouter dans le script d'upload un menu deroulant permetant de choisir une catégorie ?et dans la pages d'affichage d'ordonner les protocoles dans différentes catégories ?
C'est vrai que j'etais partit sur une idée avec une bdd mais votre méthode est vraiment plus simple (mme si j'ai aps encore tout compris sur son fonctionnement).