Foros del Web » Programando para Internet » PHP »

Problemas con unlink

Estas en el tema de Problemas con unlink en el foro de PHP en Foros del Web. Bien, tengo una lista de mis registros donde tengo la opción de borrar, estos registros están enlazados con fotos que tb se han de borrar. ...
  #1 (permalink)  
Antiguo 21/06/2004, 09:36
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 22 años, 6 meses
Puntos: 0
Problemas con unlink

Bien, tengo una lista de mis registros donde tengo la opción de borrar, estos registros están enlazados con fotos que tb se han de borrar.
las fotos dentro del while las he puesto así:
Código PHP:
$delFoto ="./secciones/users/".$row['nuevoNombre1']."";
$delFoto .="./secciones/users/".$row['nuevoNombre2']."";
$delFoto .="./secciones/users/".$row['nuevoNombre3']."";
$delFoto .="./secciones/users/".$row['nuevoNombre4'].""
y el link de borrar es así:
Código PHP:
<class="negro\" href=\"borrar.php?id=".$row["id"].";pic=$delFoto\">[Borrar]</a> 
ahora la pagina de borrar.php, me borra el registro con ese $id pero no las fotos, aquí está mi código de borrar:
Código PHP:
unlink($pic); // liena 69
$sql "DELETE FROM dr_anuncio WHERE id =".$_POST['id']; // linea 70 
y por último el error que me dá en la web:
Código PHP:
WarningUnlink failed (No such file or directoryin /usr/local/psa/home/vhosts/derelax.com/httpdocs/admin/borrar.php on line 69
You have an error in your SQL syntax near 
';pic=/secciones/users//secciones/users//secciones/users//secciones/users/' at line 1 
Así que tengo claro que no estoy indicando bien la dirección de las fotos, pero ¿como las paso por el enlace?

Gracias ;)
__________________
Seguro que ahora me sale mejor!

Última edición por benti; 21/06/2004 a las 09:41
  #2 (permalink)  
Antiguo 21/06/2004, 10:04
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tienes un problema de SQL .. pero eso lo proboca:

Código PHP:
<class="negro\" href=\"borrar.php?id=".$row["id"].";pic=$delFoto\">[Borrar]</a> 
No sé si quieres propagar esa variable "pic" junto con el "id" a tu borrar.php .. en tal caso sería usar como separador de variables el & no el ; ...

Código PHP:
<class="negro\" href=\"borrar.php?id=".$row["id"]."&pic=$delFoto\">[Borrar]</a> 
Y luego .. usar:

Código PHP:
$sql "DELETE FROM dr_anuncio WHERE id ='".mysql_escape($_POST['id'])."'"// linea 
70 
Para tu seguridad y así evitar problemas de "SQL inyection" donde podrían ejecutar "sql" malicioso por no usar ni comillas ni "escapar" las comillas que pueda contener tu "id" (variable externa que usas para componer tu sentencia SQL).

Un saludo,

Última edición por Cluster; 21/06/2004 a las 10:06
  #3 (permalink)  
Antiguo 21/06/2004, 10:43
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 22 años, 6 meses
Puntos: 0
Gracias Cluster, he variado el codigo:
Código PHP:
if (!$nuevoNombre1==''){
$delFoto ="./secciones/users/".$row['nuevoNombre1']."";
}
if (!
$nuevoNombre2==''){
$delFoto .="./secciones/users/".$row['nuevoNombre2']."";
}
if (!
$nuevoNombre3==''){
$delFoto .="./secciones/users/".$row['nuevoNombre3']."";
}
if (!
$nuevoNombre4==''){
$delFoto .="./secciones/users/".$row['nuevoNombre4']."";

y la llamada como me la has puesto:
Código PHP:
$sql "DELETE FROM dr_anuncio WHERE id ='".mysql_escape($_POST['id'])."'"
Pero ahora tengo este error:
Warning: Unlink failed (No such file or directory) in /usr/local/psa/home/vhosts/derelax.com/httpdocs/admin/borrar.php on line 69

Fatal error: Call to undefined function: mysql_escape() in /usr/local/psa/home/vhosts/derelax.com/httpdocs/admin/borrar.php on line 70
__________________
Seguro que ahora me sale mejor!
  #4 (permalink)  
Antiguo 21/06/2004, 11:40
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ok, me equivoqué con el nombre de la función ...

mysql_escape_string() es la correcta ..

www.php.net/mysql_escape_string

Un saludo,
  #5 (permalink)  
Antiguo 21/06/2004, 12:35
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 22 años, 6 meses
Puntos: 0
vale ya lo tengo listo, despues de averiguar ke hay ke poner la direccion del server.
__________________
Seguro que ahora me sale mejor!

Última edición por benti; 21/06/2004 a las 13:09
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 15:45.