Foros del Web » Programando para Internet » PHP »

problema al subir foto al servidor por segunda vez.

Estas en el tema de problema al subir foto al servidor por segunda vez. en el foro de PHP en Foros del Web. Buenos dias, tengo un formulario de entrada de articulos donde se puede añadir una foto. Código PHP: $uploaddir  =  'miruta' ;  $nomfoto = $_FILES [ ...
  #1 (permalink)  
Antiguo 27/09/2005, 01:39
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 12 años, 11 meses
Puntos: 10
problema al subir foto al servidor por segunda vez.

Buenos dias,

tengo un formulario de entrada de articulos donde se puede añadir una foto.
Código PHP:
$uploaddir 'miruta'
$nomfoto=$_FILES['userfile']['name'];
$uploadfile $uploaddir $_FILES['userfile']['name']; 
$uploadcheck $uploadfile

if(empty(
$_FILES['userfile']['name'])){ 
$uploadfile "";} 

$str_ins "INSERT INTO articles (nom_article,ingredients,codi_grup_article,gluten,imatge)
VALUES ('$nom_article','$ingredients','$grup_article','$gluten','$nomfoto')"
;
    
$result execSQL($str_ins);

print 
"<pre>"
if (
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { 
print 
"El archivo fue subido con éxito"
print 
"Información del archivo:"
print_r($_FILES); 
} else { 
print 
"El archivo no se pudo subir, información:\n"
print_r($_FILES); 

print 
"</pre>"
Esta parte funciona correctamente. El problema lo tengo cuando quieren editar este articulo. Tengo un formulario simple donde se cargan los datos del articulo, el cual se quiere editar. Pero al intentar hacer el Update de la foto no funciona y si ya tenia una foto esta se pierde, es decir, se borra de la base de datos. Me dice el archivo no se pudo subir... y cuando imprimie el Array me lo muestra vacio...
el codigo del update es el siguiente:
Código PHP:
$uploaddir 'miruta'
$nomfoto=$_FILES['userfile']['name'];
$uploadfile $uploaddir $_FILES['userfile']['name']; 
$uploadcheck $uploadfile

if(empty(
$_FILES['userfile']['name'])){ 
$uploadfile "";} 

$str_upd "UPDATE articles 
    SET nom_article= '"
.$nom_article."',
    ingredients = '"
.$ingredients."',
    codi_grup_article= "
.$grup_article.",
    caducitat = '"
.$caducitat."',
    gluten= "
.$gluten.",
    imatge='"
.$nomfoto."'
    WHERE codi_article = $codi_article"
;
    
$result execSQL($str_upd); 

print 
"<pre>"
if (
move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { 
print 
"El archivo fue subido con éxito"
print 
"Información del archivo:"
print_r($_FILES); 
} else { 
print 
"El archivo no se pudo subir, información:\n"
print_r($_FILES); 

print 
"</pre>"
no entiendo xq pasa esto ya q el codigo es el mismo, menos la sentencia SQL.

aqui dejo el formulario para editar articulos:
Código:
<form name="form1" action="index.php?fuseaction=update" method="POST">
	<input type="Hidden" name="codi_article" value="<?=$row_edit[codi_article]?>">
	<table width="80%" cellpadding="2" cellspacing="0" class="list">
		<tr>
			<td class="listheader" colspan="2">Dades de l'Article</td>
		</tr>
		<tr>
			<td class="listitem">Article</td>
			<td class="listitem"><input type="Text" size="40" name="nom_article" value="<?=$row_edit[nom_article]?>"></td>
		</tr>
		<tr>
			<td class="listitem" valign="top">Ingredients</td>
			<td class="listitem"><textarea name="ingredients" cols="40" rows="6"><?=$row_edit[ingredients]?></textarea></td>
		</tr>
		<tr>
			<td class="listitem" valign="top">Caducitat</td>
			<td class="listitem"><input type="Text" size="40" name="caducitat" value="<?=$row_edit[caducitat]?>"></td>
		</tr>
		<tr>
			<td class="listitem">Imatge</td>			
	        <td class="listitem">
				<img src="<? echo "/img/productes/".$row_edit[imatge]?>" height="90" width="90">
				<input name="userfile" type="file" value="<?=$row_edit[imatge]?>">
			</td>
		</tr>
		<tr>
			<td class="listitem" valign="top">Grup Article</td>
			<td class="listitem">
				<select  name="grup_article">
					<?
					$codi_grup_article=$row_edit[codi_grup_article];
					$sql = "SELECT codi_grup_article,nom_grup_article 
							FROM grup_articles ORDER BY nom_grup_article ASC";
					$qry = execSQL($sql); 
					while ($row=mysql_fetch_array($qry)){
						if ($codi_grup_article==$row[codi_grup_article]){	
							echo ("<OPTION VALUE=".$row[codi_grup_article]." SELECTED>".$row[nom_grup_article]."\n");
						}else{
							echo ("<OPTION VALUE=".$row[codi_grup_article].">".$row[nom_grup_article]."\n");
						}					
					}
					?>		
				</select>
			</td>
		</tr>
		<tr>
		<td class="listitem" valign="top">Gluten</td>
		<td class="listitem">
			<select  name="gluten">
			<? if ($row_edit[gluten]==0){?>
				<option value=0 selected>Con Gluten
				<option value=1>Sin Gluten				
			<?}else{?>
				<option value=0>Con Gluten
				<option value=1 selected>Sin Gluten
			<?}?>
			</select>
		</td>
		</tr>
	</table>
	<p>
	<input type="Button" class="boto" value="Guardar" onclick="envia();">
</form>
Gracias de antemano,

Saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 27/09/2005 a las 01:45
  #2 (permalink)  
Antiguo 27/09/2005, 11:08
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 12 años, 11 meses
Puntos: 10
Buenas...
alguna idea xq sucede esto?

Gracias de antemano,

Saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #3 (permalink)  
Antiguo 28/09/2005, 01:03
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 12 años, 11 meses
Puntos: 10
buenos dias....
perdonar mi insistencia xo es un tema q me urge un poco...

Muchas gracias,

Saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #4 (permalink)  
Antiguo 03/10/2005, 03:15
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 12 años, 11 meses
Puntos: 10
Buenos dias...
alguna idea para solucionar esto?

saludos y gracias!
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 03/10/2005 a las 03:24
  #5 (permalink)  
Antiguo 03/10/2005, 03:51
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
¿ningún avanze en este tiempo??, ¿algo que hayas intentado??...

Según veo:
Código HTML:
<form name="form1" action="index.php?fuseaction=update" method="POST"> 
no indicas que el formulario también enviará archivos. Agrega:
Código HTML:
enctype="multipart/form-data"
como atributo de la etiqueta <form>... eso es HTML, no PHP y lo verás si miras cualquier formulario que envie archivos (tu otro formulario...).

Supongo es eso.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:30.