Ho un programma per inserire, modificare e cancellare prodotti da un database.
Tutto funziona benissimo tranne che per la modifica della foto.
Ho 2 soluzioni per modificare la foto:
1) viene caricata un'immagine gia' presente nella cartella delle immagini (e funziona)
2) viene scelta dal pc con il classico pulsante "sfoglia".
Quando effettuo questa operazione non mi copia la nuova immagine nella cartella e non capisco il motivo.
Questo e' il codice che uso per la modifica del prodotto e della foto, dove sbaglio?:
Codice PHP:
<?
$barra = "\\";
$barra_test = "\\\\";
$foto = str_replace($barra_test, $barra, $foto);
$appo = explode($barra, $foto);
$conta_appo = sizeof($appo);
$conta_appo = $conta_appo - 1;
$foto_db = $appo[$conta_appo];
include("config.php");
$connessione = @mysql_connect("$host","$db_user","$db_pass")
or die("Impossibile stabilire una connessione.");
$db = @mysql_select_db($db_nome, $connessione)
or die("Impossibile selezionare il database.");
$sql = "update $nome_tabella
set
prodotto = \"$prodotto\",
descrizione = \"$descrizione\",
categoria = \"$categoria\",
codice = \"$codice\",
prezzo = \"$prezzo\",
foto = \"$foto_db\"
where id = \"$id\"
";
$risultato = @mysql_query($sql, $connessione)
or die("Impossibile eseguire l'interrogazione.");
?>
Codice PHP:
<?php
if ($opera == 'upload')
{
if ($foto_db!= "") {
@copy("$foto" , "../fotoschede/$foto_db")
or die("Non e' stato possibile inviare il file.");
} else {
die("File non specificato");
}
}
?>
La cartella dove dovrei fare l'upload si trova una cartella indietro e si chiama fotoschede quindi per andare indietro uso ../ e poi metto il nome della cartella fotoschede: quindi viene cosi
Codice PHP:
@copy("$foto" , "../fotoschede/$foto_db")
Ma non me lo uploada.
Che devo fa??