Provo a entrare nel dettaglio...
Ho un form come quello visibile QUI dove all’interno ci sono 2 tipi di oggetti:
1 - campi per dati che andranno ad inserirsi in un database
2 - campi relativi a immagini da uploadare
Lo stato di entrambi deve però essere salvato contemporaneamente: tutti icambiamenti (relativi ai dati o alle immagini) devono essere rilevati ciccando su SALVA.
Ora, mi si presenta il problema della cancellazione di immagini così ho messo il tasto di cancellazione (X) come
codice:
<INPUT type=submit …>
perché pur richiamando un’operazione di cancellazione deve salvare lo stato di tutto il resto come se si premesse SALVA
Quindi io vorrei poter rilevare in una variabile se viene premuto X oppure SALVA:
-se viene premuto X ci sarà un’operazione php di cancellazione file (unlink…) e quindi il salvataggio di tutti gli altri dati
-se viene premuto SALVA ci sarà il salvataggio di tutti gli altri dati
I pezzi di codice relativi sono i seguenti:
codice:
.....................
.....................
.....................
$editFormAction = $HTTP_SERVER_VARS['PHP_SELF'];
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
$editFormAction .= "?" . $HTTP_SERVER_VARS['QUERY_STRING'];
}
if ((isset($HTTP_POST_VARS["MM_update"])) && ($HTTP_POST_VARS["MM_update"] == "form_brokeraggio")) {
// UPLOAD IMMAGINI
$codice = $HTTP_GET_VARS['codice'];
$nomecartella = "/ux01/0/172/public_html/immagini/brokeraggio/".$codice;
if ($HTTP_POST_FILES['img1']['tmp_name'] != "" && $HTTP_POST_FILES['img1']['tmp_name'] != $codice."_foto_1.jpg") {
if (substr($HTTP_POST_FILES['img1']['name'], -3) != "jpg") {
exit("ATTENZIONE LE IMMAGINI DEVONO ESSERE IN FORMATO JPG");
}
if (file_exists("../immagini/brokeraggio/".$codice."/".$codice."_foto_1.jpg")) {
unlink($nomecartella."/".$codice."_foto_1.jpg");
}
copy ($HTTP_POST_FILES['img1']['tmp_name'],$nomecartella."/".$HTTP_POST_FILES['img1']['name']);
rename ($nomecartella."/".$HTTP_POST_FILES['img1']['name'], $nomecartella."/".$codice."_foto_1.jpg");
}
.....................
.....................
.....................
$updateGoTo = $PHP_SELF;
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $HTTP_SERVER_VARS['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
}
.....................
.....................
.....................
<head>
<script language="Javascript">
// Questo script visualizza un'anteprima delle immagini selezionate per l'upload
function preview(x)
{
switch (x) {
case 1:
document.swap1.src = document.form_brokeraggio.img1.value;
return true;
case 2:
document.swap2.src = document.form_brokeraggio.img2.value;
return true;
}
....................
....................
....................
</script>
<script language="Javascript">
// Questo script visualizza NESSUNA FOTO SELEZIONATA quando si clicca sul cestino per eliminare una foto
function preview2(y)
{
switch (y) {
case 1:
document.swap1.src = "../immagini/nessuna_foto_selezionata.jpg";
....................
....................
....................
</script>
</head>
<form action="<?php echo $editFormAction ?>" enctype='multipart/form-data' name='form_brokeraggio' method='POST'>
.................................
..... CAMPI RELATIVI AI DATI ....
.................................
<td height="30" valign="top" bordercolor="#FFFFFF" bgcolor="#EFF3F7"><font color="#EFF3F7">---</font>[img]<?php if (file_exists("../immagini/brokeraggio/".$codice."/".$codice."_foto_1.jpg")) { echo "../immagini/brokeraggio/".$codice."/".$codice."_foto_1.jpg?=".rand();} else { echo "../immagini/nessuna_foto_selezionata.jpg";}?>[/img]
<input type="file" name="img1" class="formimmagini" size="30" Onchange="preview(1)"><input type=submit alt="Elimina foto" title="Elimina foto" style=" width:20px; height:20px;" value="X" OnClick='preview2(1); y=1;'>
</td>
................................
................................
................................
<input name='pubblicazione' type=checkbox>
<--- PUBBLICA SU INTERNET
<input type=submit value='SALVA'OnClick="scritta_status_bar()">
<input type="hidden" name="MM_update" value="form_brokeraggio" >
</form>
Funziona tutto, eccetto per il fatto che ho esposto sopra che ancora devo gestire
Grazie dell’attenzione, spero qualcuno possa aiutarmi
Ciao !