PDA

View Full Version : Problemi di POST


Carmen
21-05-2004, 16:50
Ciao,

Da una pagina asp devo inserire alcuni di campi nel DB, e sempre della stessa pagina contemporaneamente devo fare l'upload di una immaggine, il problema si è presentato perche per l'upload il post lo devo settare così

<form action="" method="post" enctype="multipart/form-data" name="form1">


L'upload dell'immagine funziona non riesco però ad scrivere i dati nel db perchè il request("xx") con questo tipo di form non ritorna nulla, quindi i valori scritti nei vari campi della pagina non riesco ad passarli al DB. Se cambio tipo di form normale scrivo i dati nel db ma non posso fare l'upload dell'immagine...


Come potrei fare????


Ciao, e Grazie

McK
21-05-2004, 17:40
a dire il vero anche form di quel tipo fanno tranquillamente passare i dati testuali (li uso quotidianamente in php).

Innanzitutto devi mettere la target page che lì manca (ma suppongo l'abbia tolta solo per il post sul forum).
Altra cosa è se il codice che va a leggere i dati postati è all'interno di una funzione hai bisogno di passare quei valori. Ti faccio un esempio (mi spiace, come al solito, di non potertelo fare in asp. Nel caso chiedi :D)

File: post.asp

function mostra_form() {
<form action="post" method="post" enctype="multipart/form- data" name="form1">
<input.....
<input.....
(ci metti tutto quello che ti serve che l'utente inserisca)
<input type"hidden" name="op" value="invia">
(poi ci piazzi il bottone del submit ed eventualmente quello di
annula)
}

if ($op=="invia") {
(scrivi i dati nel database e gestisci il salvattaggio dell'immagine nella cartella desiderata.)
} else {
mostra_form()
}

In questo modo quando viene eseguito il file il codice che viene attivato è quello dell'if in basso. La prima volta la variabile op (quella che passa il form come hidden vars) sarà nulla quindi mostrerà il form mentre quando viene richiamata dal submit del form varrà esattamente invia e quindi eseguirà il codice per salvare i dati.

Ciao, McK

Carmen
22-05-2004, 12:43
Ciao,

Ti ringrazio come sempre del consiglio, in questi casi sempre prezziosissimo....


Ciao...............