Foros del Web » Programando para Internet » PHP »

otra curiosidad

Estas en el tema de otra curiosidad en el foro de PHP en Foros del Web. tengo una imagen que se llama noimages.jpg... y veo algo curioso... cuando trato de actualizar un campo con esta imagen, pues me da este problema: ...
  #1 (permalink)  
Antiguo 26/07/2003, 11:37
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
otra curiosidad

tengo una imagen que se llama noimages.jpg... y veo algo curioso... cuando trato de actualizar un campo con esta imagen, pues me da este problema:

Código PHP:
Warningcopy(../cars/images/noimages.jpg) [function.copy]: failed to create streamPermission denied in /home/httpd/vhosts/MOTORSOLUTION.COM/httpdocs/nuevo/admin/actualizar2.php on line 101 

mi pregunta es: ¿Por qué me da ese error solo cno esta imagen y no con las demas?
__________________
www.dataautos.com
  #2 (permalink)  
Antiguo 26/07/2003, 11:45
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 3 meses
Puntos: 0
Código señor.
  #3 (permalink)  
Antiguo 26/07/2003, 11:46
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
aqui esta

Código PHP:
if(isset($Submit))
{
//Si el boton submit ha sido pulsado
//verificanos si los archivos son imagenes pjpeg o gif
if($_FILES['photo']['type']=="image/pjpeg" or $_FILES['photo']['type']=="image/gif"){
$file=$_FILES['photo']['name'];
//Copiamos el archivo al servidor
copy($_FILES['photo']['tmp_name'], '../cars/images/'.$file);
//insertamos el nombre del archivo en la base de datos.
mysql_query("UPDATE Carros SET photo='$file' WHERE Id='$Id'");

__________________
www.dataautos.com
  #4 (permalink)  
Antiguo 26/07/2003, 11:48
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
Pienso que es por que existe en el servidor.... pero como hago si existe la imagen?
__________________
www.dataautos.com
  #5 (permalink)  
Antiguo 26/07/2003, 11:51
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
Permission denied in /home/httpd/vhosts/MOTORSOLUTION.COM/httpdocs/nuevo/admin/actualizar2.php


la linea 101 supongo que sera la de: copy($_FILES['photo']['tmp_name'], '../cars/images/'.$file);

siendo asi el tema, yo creo que no tienes acceso de escritura en ese dir, o que esta mal escrita la direccion, pero creo que no tienes acceso de escritura.... es un DOMINIO, una web de esas gratis o es tu PC ????

cuentanos.....
__________________
3w.valenciadjs.com
3w.laislatv.com
  #6 (permalink)  
Antiguo 26/07/2003, 11:53
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
si ya existe la imagen.... creo que lo mejor esq hagas una condicion....

Código PHP:
if ($nombre_imagen==$nueva_imagen)
echo 
"error, el nombre la imagen ya existe, tendras que renombrar antes de subir el fichero"
__________________
3w.valenciadjs.com
3w.laislatv.com
  #7 (permalink)  
Antiguo 26/07/2003, 11:53
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
es un dominio, pero es que solo me sucede con esa imagen y en el directorio si tengo permiso de escritura... esta(777)... ya he tratado con otras imagenes que estan ahi en el servidor y no me da error, tambien con fotos nuevas y no me da error, repito la mismas y no me da error... solo con esa que se llamaa noimages.jpge
__________________
www.dataautos.com
  #8 (permalink)  
Antiguo 26/07/2003, 11:54
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
jpge......umm y pq ese nombre de extension..... no seria JPG... igual es ese el error... vamos seguro
__________________
3w.valenciadjs.com
3w.laislatv.com
  #9 (permalink)  
Antiguo 26/07/2003, 11:57
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
ajaj noooo aqui edite mal la extension.jeje

pero es una imagen el caso que con una especifica jeje es que no me funciona
__________________
www.dataautos.com
  #10 (permalink)  
Antiguo 26/07/2003, 12:01
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
mira yo esq soy nuevo en esto, solo llevo 2 meses y algo... y bueno... aqui te pongo el codigo que yo uso para subir ficheros al servidor, esta testado por varios usuarios ya que lo he posteado varias veces... tiene que funcionar.... aparte es bastante sencillo de entender.... un saludo y perdona que no sea mas especifico con mis respuestas... como ya dije soy nuevo en el tema....

prueba este,,,, seguro que te funciona y lo entienes

fichero upl2.php
Código PHP:
<?
// Configuración //
///////////////////
// $extensiones=array("1ªext","2ªext","....");
// Aqui debes poner las extensiones que NO admitas
// por ejemplo si no quieres admitir .html , .exe ni .gif :
// $extensiones=array("html");
///////////////////////////////////////
$extensiones=array("html","php");
/////////////////
// $path="/ruta/ta/ta";
// Si el server rula bajo LinuX toda la ruta completa /var/etc/..
// Si rulas bajo WindoWs C:/midirectorioroot/tal..
// Nota: Sin el último / ej: C:/miweb NO C:/miweb/
////////////////
$path="c:/Apache/htdocs/upload";
$nombre=$HTTP_POST_FILES['archivo']['name'];
$tamanio=$HTTP_POST_FILES['archivo']['size'];
$tipo=$HTTP_POST_FILES['archivo']['type'];
$var explode(".","$nombre");
$num count($extensiones);
$valor $num-1;
for(
$i=0$i<=$valor$i++) {
    if(
$extensiones[$i] == $var[1]) {
    echo 
"Tipo de Archivo no admitido";
    exit;
    }
}
if (
is_uploaded_file($HTTP_POST_FILES['archivo']['tmp_name']))
 {
  
copy($HTTP_POST_FILES['archivo']['tmp_name'], "$path/$nombre");
  echo 
"El archivo se ha subido correctamente al servidor, muchas gracias y hasta pronto. <p>";
  echo 
"Nombre: $nombre <p>";
  echo 
"Tamaño: $tamanio <p>";
  echo 
"Tipo: $tipo";
 }
else { echo 
"Error al subir el archivo, demasiado grande, tamaño maximo 1,4 megas."; }
?>


fichero upload.html.... el formulario
Código PHP:
El archivo tiene que ser menor de 1,4 megas.
<
form method="POST" enctype="multipart/form-data" action="upl2.php">
<
input type="file" name="archivo" size="20">
<
input type="submit" value="Enviar" name="send">
<
input type="reset" value="Borrar" name="erase">
</
form

modifica como quieras....;)
recuerda php superior a 4.2


solo te falta actualizar el directorio remoto, los ficheros que no quieres que suban, la frase y poner tu update de la BD
__________________
3w.valenciadjs.com
3w.laislatv.com
  #11 (permalink)  
Antiguo 26/07/2003, 12:01
Avatar de biblio  
Fecha de Ingreso: enero-2002
Ubicación: Urano
Mensajes: 577
Antigüedad: 22 años, 3 meses
Puntos: 0
Entonces, usa el file_exists(); de ese modo sabes si alguna imagen ya existe en el directorio, y tomas las accciones pertinentes.

Saludos
  #12 (permalink)  
Antiguo 26/07/2003, 12:18
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
pues como te digo.... he probado con todas mis imagenes, subiendolas varias veces y no pasa nada... solo pasa con esa imagen...
__________________
www.dataautos.com
  #13 (permalink)  
Antiguo 26/07/2003, 12:20
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
pues hijo mio nuse.....
__________________
3w.valenciadjs.com
3w.laislatv.com
  #14 (permalink)  
Antiguo 26/07/2003, 12:24
Avatar de asinox  
Fecha de Ingreso: enero-2002
Ubicación: Santo Domingo
Mensajes: 2.712
Antigüedad: 22 años, 3 meses
Puntos: 6
ni yo (si tu eres nuevo ya somos dos new en phpcito)
__________________
www.dataautos.com
  #15 (permalink)  
Antiguo 26/07/2003, 12:33
Avatar de nuevo  
Fecha de Ingreso: mayo-2003
Ubicación: Spain
Mensajes: 2.009
Antigüedad: 20 años, 11 meses
Puntos: 2
si usas el codigo que te he pasado lo lograras....
__________________
3w.valenciadjs.com
3w.laislatv.com
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 08:57.