Hola, hace unos dias hice una pregunta sobre el mismo codigo.... y ahora tengo otro problemilla
Tengo una conexión FTP, donde un administrador va a subir o eliminar archivos segun convenga....
tengo el siguiente codigo::::
eliminar.php Código PHP:
ob_start();
session_start();
require("Conexion.php");
if(isset($_SESSION['usuario'])){
$ftp_server="ftp.server.mx";
$ftp_usuario="[email protected]";
$ftp_password="mypassword";
}else{
header("Location:../inicio.php?Error=Acceso denegado");
}
if (isset($_GET['n'])){
$nom=$_GET['n'];
}else{
header("Location:administrador.php?Error=Acceso denegado");
}
Código Javascript
:
Ver original<script type="text/javascript">
$(function(){
$(".elim").click(function(){
var element = $(this);
var del_id = element.attr("id");
var info = 'id=' + del_id;
*****************************************
var nombre = "<?echo $nom;?>";
var nom1 = 'nom=' + nombre; //ESTO ES LO QUE NO SE SI ESTE BIEN
*****************************************
if(confirm("¿Seguro que quieres eliminar el archivo seleccionado?"))
{
$.ajax({
type: "POST",
url: "ajax.php",
*****************************************
data: {info, nom1},//AQUI TAMBIEN
*****************************************
success: function(){
}
});
$(this).parents(".show").animate({ backgroundColor: "#003" }, "slow")
.animate({ opacity: "hide" }, "slow");
}
return false;
});
});
</script>
Código PHP:
<div class="col-sm-12"> <!--AQUÍ LA TABLA-->
<b>CONTENIDO FTP</b>
<table class="table" border="1">
<tr>
<td><b>Archivo</b></td>
<td><b>Tamaño</b></td>
<td><b>Fecha</b></td>
<td class="text-center"><b><span class="glyphicon glyphicon-trash" aria-hidden="true"></span></b></td>
</tr>
<?php
// establecer una conexión básica AL SERVIDOR FTP
$conn_id = ftp_connect($ftp_server) or die('No se pudo conectar con el servior');
// iniciar sesión con nombre de usuario y contraseña
$login_result = ftp_login($conn_id, $ftp_usuario, $ftp_password)or die('No se pudo acceder al servior');
//usar ftp en modo pasivo
ftp_pasv($conn_id, true);
// cambiar al directorio
ftp_chdir($conn_id, $nom);
// Obtener los archivos contenidos en el directorio actual
$files = ftp_nlist($conn_id, '.');
//antes de invertir el arreglo, ocultamos los primeros 2 elementos (los subdirectorios)
unset($files['0']); //ocultamos .
unset($files['1']); //ocultamos ..
$files=array_reverse($files); //Invierte orden del array (ordena array)
while ($item=array_pop($files)) //Se leen todos los ficheros y directorios del directorio
{
$tamano=number_format(((ftp_size($conn_id,$item))/1024),2)." Kb";
//Obtiene tamaño de archivo y lo pasa a KB
if($tamano=="-0.00 Kb") // Si es -0.00 Kb se refiere a un directorio
{
$item=$item;
$tamano=" ";
$fecha=" ";
}else{
$fecha=date("d/m/y h:i:s", ftp_mdtm($conn_id,$item));
//Filemtime obtiene la fecha de modificacion del fichero; y date le da el formato de salida
}
?>
<tr onmouseover="OverFunction(this)" onmouseout="OutFunction(this)">
<td width="30%"><font size="2" face="Verdana, Tahoma, Arial"><?php echo $item ?></font></td>
<td width="20%"><font size="2" face="Verdana, Tahoma, Arial"><?php echo $tamano ?></font></td>
<td width="30%"><font size="2" face="Verdana, Tahoma, Arial"><?php echo $fecha ?></font></td>
<td id="elim" class="text-center" width="20%"><font size="2" face="Verdana, Tahoma, Arial">
<?php echo "<a href='#' title='Eliminar' class='elim' id=".$item.">Eliminar</a>" ?></font></td>
</tr>
<?php
}
?>
</table>
</div>
<?php
ob_end_flush();
?>
ajax.php Código PHP:
<?php
*****************************************
if(isset($_POST['id']) && isset($_POST['nom'])) //SUPONGO QUE AQUI ESTA EL PROBLEMA (o no?)
*****************************************
{
$file = $_POST['id'];
$nom=$_POST['nom'];
$ftp_server="ftp.server.mx";
$ftp_usuario="[email protected]";
$ftp_password="mypassword";
// establecer una conexión básica AL SERVIDOR FTP
$conn_id = ftp_connect($ftp_server) or die('No se pudo conectar con el servior');
// iniciar sesión con nombre de usuario y contraseña
$login_result = ftp_login($conn_id, $ftp_usuario, $ftp_password)or die('No se pudo acceder al servior');
//usar ftp en modo pasivo
ftp_pasv($conn_id, true);
// cambiar al directorio
ftp_chdir($conn_id,$nom);
// intentar eliminar el archivo $file
if (ftp_delete($conn_id, $file)) {
echo'<script type="text/javascript">
swal("¡Listo!", "El archivo se eliminó de forma correcta.", "success");
</script>';
} else {
echo'<script type="text/javascript">
swal("¡Error!", "El archivo no se pudo eliminar correctamente.", "error");
</script>';
}
}
?>
Ahora si... ¿donde está mal? no se mucho ajax así que estoy a prueba y error....
Necesito pasar la variable
$nom que es de php por ajax porque el objetivo del administrador es subir y eliminar archivos diferentes para cada usuario registrado en el sistema, y nom es el nombre del usuario por lo tanto el nombre de la carpeta a la que debo accesar