Ciao a tutti!
io ho questo codice:
Codice PHP:
// controllo l'esistenza delle variabili
if (!isset($_POST['name']) || !isset($_POST['descr']) ||
!isset($_POST['prezzo']) || !isset($_FILES['img']) ||
!isset($_POST['home']) || !isset($_POST['visual'])) {
errore_back("Errore, non puoi entrare in questa pagina direttamente");
} // end if
// controllo le lunghezze dei campi
controlla_back($_POST['name'],5,50,"Nome articolo");
controlla_back($_POST['descr'],5,5000,"Descrizione Articolo");
controlla_back($_POST['prezzo'],0,10,"Prezzo");
controlla_back($_POST['home'],1,1,"Home");
controlla_back($_POST['visual'],1,1,"Visualizza");
// riga di controllo, commentare o cancellare dopo il debug
echo '$_FILES[\'img\'][\'name\']: [b]'.$_FILES['img']['name']."[/b]
";
echo '$_FILES[\'img\'][\'error\']: [b]'.$_FILES['img']['error']."[/b]
";
echo '$_FILES[\'tmp_name\']:'.$_FILES['tmp_name']."[/b]
";
//immagine
$fai_upload = false;
if (isset($_FILES['img']) && $_FILES['img']['name']!="" ) {
$img_uploaded = $_FILES['img'];
$imgloadPart = explode(".",$img_uploaded);
$ext = $imgloadPart[1];
// prendo i parametri dal file e controllo se corretti
if ($_FILES['img']['size']>50000 ||
(strcasecmp($ext,"jpg")!=0 &&
strcasecmp($ext,"gif")!=0)) {
errore_back ("Le immagini possono essere '.jpg' o '.gif' e non
devono 'pesare' piu' di 50kb");
} // end if
// assegno i parametri al file da uploadare
$img_url = $ext;
$fai_upload = true;
} // end if
// faccio questo controllo per vedere se qualcosa è andato storto
if ($fai_upload==false) {
errore_back ("Devi specificare un'immagine da inserire");
} // end if
// inserire qui la query per l'inserimento dei dati nel database
// importante per la funzione mysql_insert_id() che da il nome all'immagine
$query = "INSERT INTO ricco_condiz (
name, descr, prezzo, home, visual
) VALUES (
\"$name\", \"$descr\", \"$prezzo\", \"$home\", \"$visual\"
)";
// riga di controllo, commentare o cancellare dopo il debug
echo "ecco come viene la query: [b]".$query."[/b]
";
mysql_query($query) or errore_home ("Impossibile inserire i
dati nel database:".mysql_error()."
");
// carico l'immagine
if ($fai_upload==true) {
$id = mysql_insert_id();
$id = $id.".".$ext;
} // end if
// riga di controllo cancellare o commentare dopo il debug
echo '$img_path.$id: [b]'.$img_path.$id."[/b]
";
echo '$img_uploaded: [b]'.$img_uploaded."[/b]
";
if ($fai_upload==true) {
@copy($img_uploaded,$img_path.$id);
// riga di controllo, cancellare o commentare dopo il debug
echo "ecco cosa cerco di uploadare: [b]".$img_uploaded."[/b]";
if (!is_uploaded_file ($img_uploaded)) {
errore_back ("Errore in fase di Upload");
} // end if
} // end if
mi dovrebbe uploadare i file jpg o gif minori di 50000 byte...
ma mi da questi due errori a seconda del file...
Warning:Unable to create 'http://localhost/img_schede/41.jpg': Invalid argument in
C:\programmi\apache group\apache\htdocs\cartella\admin\nuovo_prodotto. php on line
96
qui sembra avere letto il file originale che si chiama bottone.jpg e pesa 1/2kb.
Warning:Unable to open 'bottone_2.jpg' for reading: No such file or directory in
C:\programmi\apache group\apache\htdocs\cartella\admin\nuovo_prodotto. php on line
96
qui sembra non aver neanche letto il file originale che si chiama bottone_2.jpg e pesa 1/2kb.
dove può stare l'errore??
Grazie mille!!