Insertion dans une BD +upload

Signaler
Messages postés
58
Date d'inscription
lundi 21 février 2005
Statut
Membre
Dernière intervention
4 janvier 2008
-
Messages postés
16
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
25 mai 2005
-
J'ai cherche à inserer dans la BD le nom du fichier à uploader sur le serveur, j'utilise aspSmartUpload pour l'upload.
Je développe en ASP.
Merci

3 réponses

Messages postés
16
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
25 mai 2005

J'ai déjà fait ca sur un site et j'ai traité le pb en 2 fois (page ou
on met le fichier à uploader + page ou le traitement se fait)



page preparation.asp :



<FORM METHOD="POST" ACTION="upload.asp" ENCTYPE="multipart/form-data" name="form">

, ,

----


</FORM>



page upload.asp :



<%

' Variables


' *********

Dim mySmartUpload

Dim file

Dim intCount

intCount=0
' Connexion à la base

Set RS = Server.Createobject("ADODB.Recordset")

SQL="SELECT Max(n_id) as Max from reparation"

rs.Open sql, conn, 1,2
' Recherche du n° auto maxi pour un incrémentation pour changer le nom du fichier

maxi=RS("Max")+1

RS.close

' Object creation


' ***************

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

' Upload


' ******

mySmartUpload.Upload

' Select each file


' ****************

For each file In mySmartUpload.Files

' Only if the file exist


' **********************

If not file.IsMissing Then

' Save the files with his original names in a virtual path of the web server


' ****************************************************************************

file.SaveAs("../stockage/" & maxi & "_" & file.FileName)

' sample with a physical path



' Display the properties of the current file


' ******************************************

Set RS = Server.Createobject("ADODB.Recordset")
' Insertion du chemin ou le fichier est stocké dans la base

SQL="INSERT INTO
reparation(code_barre,hypertexte) VALUES('"&
mysmartupload.form("code_barre") &"','../stockage/" & maxi
& "_" & file.Filename & "');"

rs.Open sql, conn, 3,3

' Message pour indiquer que le transfert a bien eu lieu

Response.Write("Le fichier " &
file.Filename & " a bien été enregistré sous le nom " & maxi
& "_" & file.Filename)

End If

Next

%>
Messages postés
58
Date d'inscription
lundi 21 février 2005
Statut
Membre
Dernière intervention
4 janvier 2008

Merci pour le code, mais ça ne marche pas, veuillez me donné les tables et les champs du BD ainsi, veuillez tester le code vous même puis donne moi tout le code correctement exécuté car je suis un débutant.

Merci
Messages postés
16
Date d'inscription
mardi 8 juin 2004
Statut
Membre
Dernière intervention
25 mai 2005

Tu crées 2 pages asp + une base de données :

- la base de données : mabase.mdb

- 1 table qui s'appelle reparation

- dans cette table : 3 champs :

- n_id : numeroAuto

- code_barre : numérique

- hypertexte : texte



- la première page tu l'appeles preparation.asp et tu mets le code suivant :



<html>



<FORM METHOD="POST" ACTION="upload.asp" ENCTYPE="multipart/form-data" name="form">

, ,

----


</FORM>



</html>



- la deuxième page, tu l'appeles upload.asp et tu mets le code suivant



<%


' Path long de la base de données


dbPath = Server.MapPath("mabase.mdb")


' Création de l'objet permettant la connexion


Set Conn = Server.CreateObject("ADODB.Connection")


' Connexion


Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};" _


& " DBQ=" & dbPath

' Variables
' *********

Dim mySmartUpload

Dim file

Dim intCount

intCount=0

' Connexion à la base

Set RS = Server.Createobject("ADODB.Recordset")

SQL="SELECT Max(n_id) as Max from reparation"

rs.Open sql, conn, 1,2

' Recherche du n° auto maxi pour un incrémentation pour changer le nom du fichier

maxi=RS("Max")+1

RS.close

' Object creation
' ***************

Set mySmartUpload = Server.CreateObject("aspSmartUpload.SmartUpload")

' Upload
' ******

mySmartUpload.Upload

' Select each file
' ****************

For each file In mySmartUpload.Files

' Only if the file exist
' **********************

If not file.IsMissing Then

' Save the files with his original names in a virtual path of the web server
' ****************************************************************************

file.SaveAs(maxi & "_" & file.FileName)

' sample with a physical path



' Display the properties of the current file
' ******************************************

Set RS = Server.Createobject("ADODB.Recordset")

' Insertion du chemin ou le fichier est stocké dans la base


SQL="INSERT INTO reparation(code_barre,hypertexte) VALUES('"&
mysmartupload.form("code_barre") &"','../stockage/" & maxi
& "_" & file.Filename & "');"

rs.Open sql, conn, 3,3

' Message pour indiquer que le transfert a bien eu lieu


Response.Write("Le fichier " & file.Filename & " a bien
été enregistré sous le nom " & maxi & "_" & file.Filename)

End If

Next

%>



Si tu n'y arrives toujours pas, envoie en MP ton mail et je t'envoie directement les fichiers.



Bonne chance